2017-12-13 18 views
0

すでにlaravelプロジェクトフォルダをcpanelホスティングにアップロードしています。私はVPSを持っていません。私はlaracastとstackoveflowで多くの例を読みましたが、この500の内部エラーが発生します。これは私の設定です。Laravel 5.5 Cpanel共有ホスティングのエラー500

私は自分のlaravelプロジェクト内のパブリックフォルダを分離し、このように私のホスティングのルートディレクトリにもう一方を置きました。

require __DIR__.'/../../my_other_folder_project/vendor/autoload.php'; 

そして

$app = require_once __DIR__.'/../bootstrap/app.php'; 
からに

require __DIR__.'/../vendor/autoload.php'; 

から

:に設定index.phpの

|-- my_other_folder_project/ 
|-- [some other folders...] 
|-- public_html/ 
| |-- [some other folders...] 
| |-- my_public_project/ 

と変更

$app = require_once __DIR__.'/../../my_other_folder_project/bootstrap/app.php'; 

から

私はこのようなパブリックフォルダの.htaccessファイルを作成しています

DirectoryIndex index.php 

<IfModule mod_rewrite.c> 
    <IfModule mod_negotiation.c> 
     Options -MultiViews 
    </IfModule> 

    RewriteEngine On 

    # Redirect Trailing Slashes If Not A Folder... 
    RewriteCond %{REQUEST_FILENAME} !-d 
    RewriteRule ^(.*)/$ /$1 [L,R=301] 

    # Handle Front Controller... 
    RewriteCond %{REQUEST_FILENAME} !-d 
    RewriteCond %{REQUEST_FILENAME} !-f 
    RewriteRule^index.php [L] 

    # Handle Authorization Header 
    RewriteCond %{HTTP:Authorization} . 
    RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}] 
</IfModule> 

このための私のPHPは7.1であり、私には、OpenSSL、PDO、MBSTRING、トークナイザのような他のrequirenmentをチェックしました既にインストールされています。

しかし、この500の内部サーバーエラーが発生していますが、私はこれについて多くの意見を探していますが、私がすでに行ったことを指摘しています。

+0

ログを確認して、500エラーが実際に発生した原因を確認しましたか? – lagbox

+0

これはerror_logにあります:[13-Dec-2017 03:20:30 UTC] PHP Parse error:構文エラー、予期しない '?' in /home/myuser/myfolder/vendor/laravel/framework/src/Illuminate/Foundation/helpers.php on line 233 –

+3

これはPHP 7.1がインストールされていないことを意味します。これは、PHP 7.0で導入されたヌル併合演算子( '??')を破っています。 – Dwight

答えて

0

初めて、あなたはPHP情報

<?php 
phpinfo(); 
?> 

を確認することができますし、そこに "MBSTRING" を検索することができます...

mbstring

mbstring拡張がまだインストールされていない場合は、あなたが求めることができますそれをインストールするプロバイダ。

すでにインストールされていてまだエラー500が表示されている場合は、phpinfo()でphpのバージョンを確認してください。また、php artisanコマンドでキャッシュをクリアします。シェル権限があるときは、 "php -v"コマンドでphpのバージョンをチェックして、デフォルトのphpを参照してください。

+0

ああ、はい、私のphpinfoはそれを持っていませんでした。まずそれをインストールします。ありがとうございました! –

関連する問題