ディレクトリにファイルをロードしようとすると、Nginxは404を見つけることができません。

ディレクトリにファイルをロードしようとすると、Nginxは404を見つけることができません。

だからウェブサイトがあります。

www.example.com directory pointed at /var/www/html/

ページを読み込むことができます。

www.example.com/foo/

このページのファイルは次の場所にあります。

/var/www/html/foo/index.html

fooフォルダにスタイルシートとオブジェクトindex.htmlがあり、以下を試してみました。

www.example.com/foo/bar.css

しかし、bar.css次の位置にあっても404 not findを返します。

/var/www/html/foo/bar.css

何を提供しますか?このファイルには644のユーザー権限があります。 index.htmlが見つかった場合は、他のファイルも見つけることができるはずです。

ベストアンサー1

chmodを使用してフォルダをファイル権限755に設定する必要があります。次の手順を実行した後、正常に動作しました。

foo/の所有者を変更した後

$ /var/www/html# chown root foo

サブファイルをrootに設定し、foo /のchmodを755に変更します。

chmod 755 foo

/var/www/html/の権限を模倣するために私のファイルにアクセスできるようになりました。

使用することを覚えておいてください

ls -l 

ディレクトリで正しいファイル権限を確認してください。また、/var/log/nginx/でアクセスログとエラーログを確認してください。 (少なくとも私が使用しているDebianではこれが正しいです。)

ログファイルが見つからない場合は、次を使用します。

find / | grep error.log > results.txt

好みのテキストエディタ(vi results.txtなど)を使用してresults.txtを開きます(サーバー上にあり、テキストファイルを読むのが端末よりも簡単であると仮定します)。

私のログを確認するように言ってくれたRichardに感謝します。

おすすめ記事