結論
Apache側の設定が必要でした。
状況
ローカル環境で作成したLaravelプロジェクトをUbuntu上で動作させるために、プロジェクトをUbuntu上に配置した。
Apacheの対応としては、以下のファイルを編集した。
ドキュメントルートの変更(これだけではTOP画面しか表示できない)
etc/apache2/sites-avaliable/000-default.conf
~~
ServerAdmin webmaster@localhost
DocumentRoot /var/www/プロジェクト名/public
~~
対応
今回の場合、以下の対応を行うことによって、TOP以外のページが表示できた。
①apache2.confのDirectory追加
etc/apache2/apache2.conf
#追加
<Directory /var/www/プロジェクト名>
Options Indexes FollowSymLinks
AllowOverride All #AllowOverrideはAllに変更
Require all granted
</Directory>
②次にApache2のモジュールを有効にするためのコマンドを実行
etc/apache2$ sudo a2enmod rewite
③最後にApacheの再起動を行います。
etc/apache2$ sudo systemctl restart apache2
補足
ピッタリこの対応で解決できる例もそう多くないかなと思います。
これ以外にも、
Laravelプロジェクトをroot権限で配置してしまう事によってLogファイルにApacheがアクセスできないパターン(これはエラー画面でるので追いやすいハズ、、!)
.htaccessの読み込みがうまくいっていなかったり(これも404になっちゃうのでわかりにくい)
様々な原因が考えられます。
次からこのパターンだけは簡単に解決できるように、ブログに残してみました。
コメント