在public_html(public)文件夾中上傳整個laravel項目並不是一個好主意。公用文件夾中的文件具有不受限制的訪問權限。
如果您不想考慮將laravel項目上載到public_html文件夾,因爲您想上傳到共享主機,則不需要這樣做。
請改爲嘗試此操作:
1.在與public_html文件夾相同的級別上創建一個名爲laravel(或其他任何您喜歡的文件夾)的文件夾。
Eg:
/
|--var
|---www
|----laravel
|----public_html
2.複製,除了從您的laravel項目在laravel
文件夾中的文件夾public
(服務器主機上)的每一件事情。
3.打開laravel項目的公共文件夾,所有內容複製並粘貼在public_html
文件夾(在服務器主機上)
4.現在在public_html
文件夾中打開文件index.php
和:
Change:
require __DIR__.'/../bootstrap/autoload.php';
To:
requrie require __DIR__.'/../laravel/bootstrap/autoload.php';
And
Change:
$app = require_once __DIR__.'/../bootstrap/app.php';
To:
$app = require_once __DIR__.'/../laravel/bootstrap/app.php';
Save and close.
5。現在去laravel
文件夾,打開server.php
文件
Change:
require_once __DIR__.'/public/index.php';
To:
require_once __DIR__.'../public_html/index.php';
Save and close.
現在,當你訪問你配置爲您的服務器的域的網址,您laravel應用程序應該工作就像它在你的本地主機上一樣。
注意:config/app
中的'url'=>'someurl'
被工匠使用,即cli,它對您的web服務器url沒有任何影響。
希望它有幫助。
編輯
完成上述之後,如果你得到一個空白頁,當您試圖訪問的URL,設置寫入權限的存儲文件夾遞歸.IE存儲中的所有文件夾及其子文件夾應該有權限775
集爲Web服務器所有者和組提供寫入權限。
如果您不打算將任何敏感信息存儲在存儲文件夾中,您還可以將權限設置爲777
,以爲存儲文件夾提供對所有存儲文件夾的讀取,寫入和執行訪問權限。
要小心linux中的文件權限,它們就像是雙刃劍,如果使用不當,可能會讓你的應用程序容易受到攻擊。爲了解Linux文件權限,您可以閱讀this
更改項目的根目錄'的public_html /項目/ public'。你不需要改變別的東西。 –