私はApache2サーバーを持っており、同様の定義を持ついくつかのvhostがあります。
<VirtualHost *:80>
DocumentRoot /var/www/html/Host1/
ServerName Host1.loc
<Directory /var/www/html/Host1>
AllowOverride FileInfo Options AuthConfig
</Directory>
ErrorDocument 404 /index.php?error=404
</VirtualHost>
<VirtualHost *:80>
DocumentRoot /var/www/html/Host2/
ServerName Host2.loc
<Directory /var/www/html/Host2>
AllowOverride FileInfo Options AuthConfig
</Directory>
ErrorDocument 404 /index.php?error=404
</VirtualHost>
...
<VirtualHost *:80>
DocumentRoot /var/www/html/hostN/
ServerName hostN.loc
<Directory /var/www/html/hostN>
AllowOverride FileInfo Options AuthConfig
</Directory>
ErrorDocument 404 /index.php?error=404
</VirtualHost>
404ページをカスタマイズしたいのですが。
問題は、いずれかのホストで404ページをテストしようとすると、最後の仮想ホストからページが表示されることです。私の設定の何が問題になっている可能性がありますか?
ErrorDocumentディレクティブをDirectoryタグ内に配置します。
トランク: https://httpd.Apache.org/docs/trunk/custom-error.html
2.2: https://httpd.Apache.org/docs/2.2/mod/core.html#errordocument
カスタムエラードキュメントは、グローバル、仮想ホスト、またはディレクトリコンテキストで使用できるErrorDocumentディレクティブを使用して構成されます。 AllowOverrideがFileInfoに設定されている場合、.htaccessファイルで使用できます。