何らかの理由で、http://server/~user/public_html/
にアクセスすると、サーバー用のユーザーディレクトリが機能しなくなり、404エラーが発生します。ファイルはFTP上にありますが、Webからは表示されません。
それは少し前に働いていたので奇妙です。
助けがありますか?
Httpd.confの一部(または、複数のファイルに分割されている場合は含まれている構成)を投稿できますか?
その中には、サーバーがユーザーのホームで検索するディレクトリを定義する「ユーザーごとの」構成セクションがあります。
たとえば、Apacheサーバーで通常使用するデフォルトは次のとおりです。
# Turn on userdirs
<IfModule mod_userdir.c>
UserDir public_html
<Directory /home/*/public_html>
Order allow,deny
Allow from all
</Directory>
</IfModule>
この場合、ユーザーが0711(または少なくとも0755)のアクセス許可を持つpublic_htmlディレクトリを持っている限り-public_htmlの読み取りおよび実行ビットと、少なくともホームディレクトリの実行を設定する必要があります-Apacheはファイルを提供します適切な権限を持つそれから。
上記の「server /〜user/public_html /」のURLからのもう1つの質問-ディレクトリpublic_html/public_htmlの下にファイルをアップロードしましたか?それ以外の場合、Apacheは自動的にその下を参照するため、最後に「public_html」部分をドロップする必要があります。
これにより、URLがhttp://server/~user/
になり、サーバーに標準以外の構成がない限り機能します。
上記のいずれも機能しない場合は、ディレクトリインデックスが有効になっているかどうかを確認し、public_htmlからインデックスファイルを削除します。構造を確認するために、すべてのファイルのリストが表示されます!
ディレクトリのアクセス許可、ディレクトリの所有権、およびApacheプロセスが実行されるユーザーをチェックして、ディレクトリがApacheで読み取りおよび実行可能であることを確認します。