2017-07-06 6 views
0

私のクライアントは、Apache PHPバージョン5.6.30ではサーバーを使用していますが、CLI PHPバージョンは5.4.16です。また、CLI PHPバージョンを変更することはできません。Laravel 5.4プロジェクトをPHP CLIバージョン5.4.16のサーバーにプッシュするには?

私はGit & & SSHを使用してローカルマシンからサーバーにプロジェクトをプッシュします。 CLI PHPのバージョンが5.4.16であるので、しかし、私は

composer install 

が、私はこれらのメッセージ

Problem 1 
    - This package requires php >=5.6.4 but your PHP version (5.4.16) does not satisfy that requirement. 
    Problem 2 
    - symfony/var-dumper v3.3.2 requires php >=5.5.9 -> your PHP version (5.4.16) does not satisfy that requirement. 
    - symfony/var-dumper v3.3.2 requires php >=5.5.9 -> your PHP version (5.4.16) does not satisfy that requirement. 
    - Installation request for symfony/var-dumper v3.3.2 -> satisfiable by symfony/var-dumper[v3.3.2]. 

するphpinfo()PHPのバージョンは5.6.30であることを伝えますを取得します実行することはできません。だから私はその部分がうまくいくはずだと思います。しかし、私はこの状況を解決するためにそれを知りません。

私がWebサイトにアクセスしたとき、私はこれらのエラーメッセージが出ます:

Warning: require(/var/www/vhosts/example.com/httpdocs/vendor/composer/ClassLoader.php): failed to open stream: No such file or directory in /var/www/vhosts/example.com/httpdocs/vendor/composer/autoload_real.php on line 12 

Warning: require(/var/www/vhosts/example.com/httpdocs/vendor/composer/ClassLoader.php): failed to open stream: No such file or directory in /var/www/vhosts/example.com/httpdocs/vendor/composer/autoload_real.php on line 12 

Fatal error: require(): Failed opening required '/var/www/vhosts/example.com/httpdocs/vendor/composer/ClassLoader.php' (include_path='.:/opt/plesk/php/5.6/share/pear') in /var/www/vhosts/example.com/httpdocs/vendor/composer/autoload_real.php on line 12 
+0

'/path/to/php-5.6 /パス/に/作曲@Devonからの提案が動作しない場合は、常にカンニングしようとすると、直接サーバーに機能しているPHPをコピーすることができますcliバイナリ。それはもちろん、それ自身の偉業でもあります。 – Devon

+1

install' –

+0

@ceejayoz CentOS/RHEL7上のPHP 5.4には、さらに5年間以上のセキュリティアップデートが提供されますが、PleskではOPが参照しているシステムバージョンと一緒に他のバージョンをインストールすることができます。 – Devon

答えて

2

pleskを使用しているので、他のPHPバージョンのバイナリは/ opt/plesk/phpにあります。

/opt/plesk/php/5.6/bin/php /usr/bin/composer install 
+0

これは実際には機能します。 php artisan optimize PHP構文解析エラー:構文エラー、予期しない 'class'(T_CLASS)、識別子(T_STRING)または変数(T_VARIABLE)または '{'または '$' in /エラーコード255で返されたpost-install-cmdイベントの処理を最適化します。Laravelは内部的に "php artisan"を実行しています正しいphpのバージョン。 –

+0

@JoshuaLeungはい、それはcomposer.jsonからです。それを修正するか、手動で '/opt/plesk/php/5.6/bin/php artisan'コマンドを手動で実行することができます。 – Devon

0

理想的ではないが、あなたはまた、サーバに沿って全体ベンダーのフォルダをプッシュすることができます。 composer installはすべてベンダーフォルダを作成します。 プロジェクトフォルダをすべてアップロードした場合は、ベンダーが含まれているため、コンポーザーを実行しないでサーバーで実行することができます。 Webバージョンが最小要件を満たしていれば、クライアントバージョンを効果的に無視できるはずです。

つまり、コマンドラインからタスクを実行する必要がある場合は、もう一度この問題に遭遇します。

関連する問題