やりたいこと
laravelのアプリをエックスサーバーのサブドメインでデプロイしたい
発生している問題
・参考サイトを見てやったけどデプロイできない
・そのアプリは403エラーになる
・index.htmlを作ればそのページはネット上で見れるようになるがlaravelのページは読み込まれない
・index.htmlを消すとまた403エラーになる
###エラー文
403 Forbidden アクセスしようとしたページは表示できませんでした。 このエラーは、表示するページへのアクセス許可がなかったことを意味します。 以下のような原因が考えられます。 アクセスが許可されていない(パーミッション等によって禁止されている)。 デフォルトドキュメント(index.html, index.htm 等)が存在しない。
参考にしたサイト
Laravelで作ったWEBアプリをXserverにデプロイする方法
index.htmlからlaravelのトップページに行くようにコードを書かないといけないのでしょうか?
追記
シンボリックリンクは繋がった!
しかし、403エラーが出た。
アクセスが許可されていない(パーミッション等によって禁止されている)。 デフォルトドキュメント(index.html, index.htm 等)が存在しない。
この時のエックスサーバーのエラーログ
[Tue Mar 16 07:34:15.272174 2021] [core:error] [pid 40206:tid 140015963059968] [client 153.219.146.226:39376] AH00124: Request exceeded the limit of 10 internal redirects due to probable configuration error. Use 'LimitInternalRecursion' to increase the limit if necessary. Use 'LogLevel debug' to get a backtrace., referer: http://hotpepper.programing-independence.com/
なので、ディレクトリにchmod 777で権限を与えた。
hotpepperディレクトリにindex.htmlを作った。
ただ、まっさらなindex.htmlが反映された。
シンボリックリンクが無効なのか?と思った。
これはシンボリックリンクが意図したところに通っていないのでしょうか?
どのようにすればlaravelのアプリが表示されるでしょうか?
追記②
ls -al ~/ドメイン名/public_html/hotpepper
上記コマンドの実行結果
合計 8 drwx--x--x 2 xs757184 members 71 3月 16 07:50 . drwx--x--x 10 xs757184 members 4096 3月 16 12:30 .. -rw------- 4 xs757184 members 3878 5月 13 2020 .user.ini -rw-r--r-- 1 xs757184 members 0 3月 16 07:50 index.html lrwxrwxrwx 1 xs757184 members 65 3月 16 07:32 public -> /home/キー名/ドメイン名/massage-project/public
ls -al ~/ドメイン名/public_html/hotpepper/
合計 8 drwx--x--x 2 xs757184 members 71 3月 16 07:50 . drwx--x--x 10 xs757184 members 4096 3月 16 12:30 .. -rw------- 4 xs757184 members 3878 5月 13 2020 .user.ini -rw-r--r-- 1 xs757184 members 0 3月 16 07:50 index.html lrwxrwxrwx 1 xs757184 members 65 3月 16 07:32 public -> /home/キー名/ドメイン名/massage-project/public
追記③
間違っているシンボリックリンクを削除します。
cd ~/ドメイン名/public_html/hotpepper/ rm ./public
サブドメインのディレクトリを改名して適当なところへ退避しておきます。
mv ~/ドメイン名/public_html/hotpepper ~/hotpepper.bak
~/ドメイン名/public_html/の下にサブドメインのディレクトリが無いことを確認したら、サブドメインのディレクトリと同じ名前でシンボリックリンクを作成します。
ln -s ~/ドメイン名/massage-project/public ~/ドメイン名/public_html/hotpepper
上記で、シンボリックリンクは貼れたと思う。
しかし、まだ真っ白。
index.htmlのではないかと予想。
エックスサーバーのエラーログにはひっかかっていないことを確認。
でも、laravelのアプリはまだ表示されていない。
何が原因んだろう?
追記④
ls -al ~/ドメイン名/public_html/ を実行した結果
hotpepper -> /home/キー/ドメイン名/massage-project/public
正しくシンボリックリンクは作成できていると思うのだけれど、意図した画面が表示されない。。
どうしてだろう?
追記⑤
hotpepperディレクトリ内のindex.htmlが表示されていた。
inde.htmlを削除したら真っ白だった画面が404 not foundに変わった。
真っ白の時も、404のと時もエックスサーバーのエラーログは何もなかった。
ローカルでは今も通常通りに動いている。
ls -al ~/ドメイン名/public_html/hotpepper/
上記のコマンドを実行した結果
合計 20 drwxr-xr-x 4 xs757184 members 171 3月 16 22:59 . drwxrwxrwx 13 xs757184 members 4096 3月 15 23:02 .. -rw-r--r-- 1 xs757184 members 603 3月 12 22:08 .htaccess drwxr-xr-x 2 xs757184 members 61 3月 12 22:08 css -rw-r--r-- 1 xs757184 members 0 3月 12 22:08 favicon.ico drwxr-xr-x 2 xs757184 members 83 3月 12 22:08 img -rw-r--r-- 1 xs757184 members 0 3月 16 22:59 index.html -rw-r--r-- 1 xs757184 members 1731 3月 12 22:08 index.php -rw-r--r-- 1 xs757184 members 24 3月 12 22:08 robots.txt -rw-r--r-- 1 xs757184 members 1183 3月 12 22:08 web.config
追記⑥
index.htmlを削除したら上記に書いてある通りに404エラーになる
追記⑦
この404エラーはエックスサーバーのエラーログには載っていなかった。
404エラーが出るように設定し直してもエックスサーバーのエラーログには出て来なかった。
だからlaravelが出しているのかもしれない
追記⑧
http://hotpepper.programing-independence.com
具体的な正解が分かる方、
よろしくお願い致します!