2017-05-31 140 views
1

我在將應用程序部署到共享主機時遇到了一些問題。Laravel在初始化時崩潰,出現錯誤500(沒有其他信息)

我做了什麼至今:

  • 複製所有的公共文件到public_html /網站/我的API
  • 複製所有laravel系統文件的public_html/laravel
  • 檢查權
  • 糾正了我-api/index.php require和require_once到laravel/bootstrap/autoload.php
  • laravel日誌是空的沒有數據
  • apache l OGS是空的
  • 沒有數據我是虛擬主機託管HETZNER

一些調試後,它崩潰的位置:

$response = $kernel->handle(
    $request = Illuminate\Http\Request::capture() 
); 

我得到錯誤500,沒有其他信息。我仔細檢查了右等,他們是777.這只是錯誤崩潰500

EDIT1:

我檢查.PHP版本,並在本地主機上它與25年6月5日我與35年6月5日測試也沒關係。

我進一步調查。它似乎崩潰在Application.php :: 207行

$this->make($bootstrapper)->bootstrap($this); 
$bootstrapper has value -> "Illuminate\Foundation\Bootstrap\RegisterProviders" 

如果有人知道更多。

+0

500通常是一個語法錯誤。您可能正嘗試部署到舊版本的PHP,該應用程序嘗試使用的語言功能不具備。另外,egad,不要使用777的燙髮。 –

+0

對於777我知道:)我只是爲了確保權利不會對它有任何指望。在此修復之後,要使用的文件夾的實際權利爲0755,文件的文件爲0644:S。它適用於PHP 5.6.4和5.6.34我使用5.6.30會做另一個檢查,但應該沒問題。 – xDan

+0

你使用的是什麼版本的laravel,我有Laravel Framework 5.4.24,我沒有找到你的文件,你的意思是錯誤的路徑:「laravel/bootstrap/cache/config.php」 – Marin

回答

1

我發現我的應用程序中的路徑不正確。

它是在Windows上開發的,因此路徑文件夾是\但遷移到生產服務器(Linux)後無法打開任何東西。所以,改變我的自定義包括:(require_one電話)與\ - > /最後的應用程序工作

我來到這個錯誤檢查

public function render($request, Exception $exception) in my App/Exception/Handler.php 

,並把後續代碼var_dump($除外)最後的印刷是怎麼回事了。如果它會幫助其他人。

感謝回答: https://stackoverflow.com/a/32714318/1861519它指向我一個異常處理程序。

EDIT1:

還有一個提示,對於一個共享的主機,如果您還沒有SSH(運行工匠/作曲家),檢查laravel /引導/緩存/ config.php文件 路徑是不正確的有。

EDIT2:

非常感謝得: https://stackoverflow.com/a/33652169/1861519 對於公共俗文件夾的正確的配置。

+1

下一次請使用任何調試器來驗證發生了什麼事情。 –

+0

共享主機,不要太喜歡亂用他。但是,這是一個選項,並感謝提示:) – xDan

+0

您正在生產服務器上直接開發代碼? :D –