2015-07-12 68 views
1

我想從本地主機部署Laravel 5項目以共享主機,但我面臨如此多的問題。我已將所有文件上傳到我的共享主機(PHP 5.5)的子文件夾中,當我嘗試http://domain.com/subfolder/public時,它顯示我有500個錯誤。我檢查laravel.log,但什麼都沒發現,將storage/設置爲777,但仍然沒有改變(顯示來自本地主機的最後一個錯誤)。將Laravel 5項目上傳到共享主機

我也檢查.htaccess它看起來不錯。我搜索了很多,嘗試了很多東西,但仍面臨同樣的問題。

現在,我的共享主機可以訪問SSH,因此我已經安裝了一個新的Laravel項目。然後將我編輯和添加的文件從我的本地主機複製到主機。然後我更新作曲家和轉儲自動加載,現在我的應用程序是工作文件。

但我不確定我做了什麼。這是否正確(我不這麼認爲)?請讓我知道直接上傳的文件有什麼問題,如果我爲我的製作應用程序使用第二個系統,是否有任何問題。

回答

0

有可能你的路由緩存混亂了。在上傳您的文件之前,請確保沒有編譯的腳本(通常與特定路徑綁定),這對於artisan route:clear,artisan cache:clearartisan view:clear是安全的。

但目前還不清楚,你能分享你的堆棧跟蹤你的錯誤(如果可能共享你的.htaccess文件和它的內容)? 對不起,我不能評論,需要更高的點。但是,通過查看您的聲明,通過移動文件(控制器,視圖,公共等)而不是整個項目,我相信清除緩存是最好的嘗試。

至於laravel項目的部署,在laravel.io中有建議的方法。公開文件夾中公開您的整個laravel文件並不是一個好主意。不過,有很多方法來部署它。

+0

嘗試避免宣傳或基於意見的答案。否則這是一個很好的答案 – davejal

0

我知道這有點晚了,但您需要: 1.將laravel的公用文件夾作爲您域的根文件夾或 2.製作子域並將根文件夾指向您的項目公用文件夾。這樣做的缺點是您的會話無法直接連接到您的主域的會話。