質問: ### 困っていること、達成したいこと ローカル環境で作ったLaravelプロジェクトをレンタルサーバーで動かしたいのですが、レンタルサーバーのPHPのバージョンを5.8から7.4に上げてから、SSH接続でComposerが動かなくなりました(それ以前は動作しました)。 当初の予定としては、ComposerでLaravelをインストールして、プロジェクト作成で変更したファイルだけ(コントローラー、ルート、ビュー等)上書きして、表示させる予定でしたが、Composerが動かないのでその手は使えなくなりました。 仕方ないので、FTPソフトで、作成したプロジェクトの全ファイルを、(表示したい)サブドメインのフォルダにアップロードしました。 しかし下記のエラーメッセージが出て、 ``` 403 Error 現在、このページへのアクセスは禁止されています。 サイト管理者の方はページの権限設定等が適切かご確認ください。 ``` メッセージ内容を調べていくと、WAF設定を一時的にオフにすることが書かれていたので、実行しました。 しかし依然として同様のエラーメッセージが出ます。 とりあえず、SSH接続でComposerを動かせるようにしたいのですが、 何か方法はありませんでしょうか? ### 試したこと 分かりませんが、ロリポップのFTPソフトで表示できる、下記ディレクトリに、Composerはすでにあるのですが、 ``` /home/users/0/ドメイン名/web - composer.json - composer.lock - composer.phar ``` 下記、コマンドを/webで実行して見ました。しかし、下記エラーメッセージが出て、だめでした。 PHPのバージョンはサブドメイン単位でバージョン指定できる設定があって、7.4に合わせています。 ``` [ドメイン名@ユーザー名 web]$ /usr/local/php7.4/bin/php -r "eval('?>'.file_get_contents('https://getcomposer.org/installer'));" -bash: /usr/local/php7.4/bin/php: そのようなファイルやディレクトリはありません ``` /web上でLaravelのプロジェクト作成のコマンドを打った時の、エラーメッセージです。 ``` [ドメイン名@ユーザー名web]$ composer create-project --prefer-dist laravel/laravel /usr/bin/env: php: そのようなファイルやディレクトリはありません ``` SSH接続でComposerを動かせるようにしたいのですが、 何か方法はありませんでしょうか? ### ロリポップサーバー関連資料 サーバーに問い合わせようとしましたが、SSH関連の質問は対象外のため、質問を受けていないそうです。
回答: > > [ドメイン名@ユーザー名 web]$ /usr/local/php7.4/bin/php -r "eval('?>'.file_get_contents('https://getcomposer.org/installer'));" > > -bash: /usr/local/php7.4/bin/php: そのようなファイルやディレクトリはありません > > > エラーメッセージの通りで、 `/usr/local/php7.4/bin/php` が無いといわれています。 このコマンドは存在していますか? ロリポップのドキュメント CGI、SSI、PHP、SENDMAILについて を見ると PHP のパスは、 > > 言語ごとのパス > > > 言語のパスはサーバーにより異なります。 > > > PHP > > バージョン7.3 > > /usr/local/bin/php7.3 > > バージョン7.4 > > /usr/local/bin/php7.4 > > > となっていますので、利用しているサーバーに合わせて PHP のパスを正しく指定してください。