Ubuntu 13.10を14.04に更新したので、新しいバージョンを使用しています。
しかし、更新後、http://localhost/
にアクセスしようとしたときに404エラーが発生することに気付きました。
Apacheと関連するすべてのサービスを完全に再インストールした後も、404エラーが表示されます。
ちなみに、httpd.confにServerName localhost
を追加したので、結果はありません。また、hostsファイルにも127.0.0.1 localhost
という行があります。
Sudo service Apache2 restart
を試みた後、Could not reliably determine the server's fully qualified domain name, using 127.0.1.1.
のようなエラーが発生しましたが、正常に修正されました。
ブラウザからhttp://localhost/
にアクセスできますが、Index of /
と表示されてから空になります。しかし、/var/www/
のように、http://localhost/test1
内のサブフォルダーにアクセスしようとすると、404が返されます。
それを修正する方法はありますか?ありがとうございました!
/etc/Apache2/sites-available/
で構成ファイルを見ることができます。デフォルトでは、他の仮想ホストを設定しない限り、default
という名前のディレクトリの下にファイルは1つだけです。
ファイルの最初の行はおそらく<VirtualHost *:80>
のようなものです。これは、この仮想ホストが使用可能なすべてのIP(この場合はlocalhostを含む)のポート80でリッスンすることを意味します。
ファイルを調べて、<Directory /var/www/>
のブロックを探します。このコードブロックは、Apacheに/var/www
を考慮するように指示します。このブロックがない場合、Apacheは単に/var/www
を調べて、もちろん/var/www/test1
を無視することを知らないため、404エラーが発生します。それに応じてそのようなブロックを追加する必要があります。
Apache(デフォルトではユーザー/var/www/test1
)に対して、www-data
の適切なアクセス許可(少なくとも、読み取りアクセス許可に加えて、他のユーザーにフォルダーの内容を一覧表示させたい場合は実行アクセス許可)を与える必要があります。