カスタム Apache 404 ページ

カスタム Apache 404 ページ

Ubuntu 上の Apache Web サーバーの 404 ページを、一般的なもの以外にカスタマイズしたいと考えています。

Not Found

The requested URL /***** was not found on this server.
______________________________________________________

Apache/*.*.** (Ubuntu) Server at **** Port 80

これはどうすれば実現できるのでしょうか?

答え1

私は自分で答えを見つけました。

/etc/apache2/conf.d/localized-error-pagesファイルを編集する必要があります。

sudoedit /etc/apache2/conf.d/localized-error-pages

プレーンテキストを入力するか、スクリプトまたはHTMLへのリンクを入力できます

答え2

<VirtualHost 192.168.0.1:80>
    ServerAdmin [email protected]
    ServerName host.ru
    ServerAlias www.host.ru
    DocumentRoot /home/WebServer/www/host.ru/public_html/
    ErrorLog /home/WebServer/www/host.ru/logs/error.log
    CustomLog /home/WebServer/www/hostu/logs/access.log combined


    Alias /error_html/ "/home/WebServer/www/host/error_html/"
    <Directory "/home/WebServer/www/host.ru/error_html">
        AllowOverride None
        Options IncludesNoExec
        AddOutputFilter Includes html
        AddHandler type-map var
        Order allow,deny
        Allow from all
        LanguagePriority en cs de es fr it nl sv pt-br ro
        ForceLanguagePriority Prefer Fallback
    </Directory>
    ErrorDocument 404 /error_html/HTTP_NOT_FOUND.html
</VirtualHost>

答え3

ここに解決策があります。お役に立てば幸いです。

デモ

サイトのフォルダに移動します。

という名前のファイルを作成します.htaccess(ただ.htaccess名前なし、ファイル拡張子のみ)。

ファイルを開いて行を追加します。

エラードキュメント 404/ファイルへのパス

交換する/ファイルへのパス404ページのファイル名はファイルと同じフォルダに配置する必要があります.htaccess。 習慣404ファイルは PHP または HTML で記述できます。次のように HTML を追加することもできます。

エラードキュメント 404 '<h1>404 見つかりません</h1>'

Apache サーバーをリロードする必要はありません。完了しました。テストしてください。

ソース -スビンのブログ

答え4

私の知る限り、Apache 2.4 のデフォルトのエラー メッセージは実行可能ファイル内にあるため、簡単にカスタマイズすることはできませんapache2

ただし、でも使用できる「ErrorDocument」ディレクティブを使用して、これらを上書きできますapache2.conf

Includeさらに良い方法は、 in を使用してapache2.conf、上書きされたメッセージを 1 つの別のファイルに収集することです。

以下もご覧くださいApache 2.4 ドキュメント

関連情報