質問: ■環境 wordpressにてサイト構築をしているのですが、会員制のサイトのため作成したURL以外は ブラウザが標準で吐き出す404のページを表示させたいと考えています。 ■試したこと テンプレートで以下のように書くと ``` ``` ページが真っ白で表示されます。 ``` ``` こちらでも同様に真っ白で表示されます。 404.phpを削除してブラウザのキャッシュを削除して 表示してみたのですが404.phpのページが表示されてしまいます。 (ブラウザ側でキャッシュが残っているのか、wordpressコアで処理されているのか? googleのキャッシュが表示されているのか?) オリジナルの404ページを作る方法はたくさん公開されているのですが ブラウザが標準で吐き出す404を意図的に表示する方法が見つけられませんでした。 ※ブラウザが標準で吐き出す404というのは IEとchromeでは存在しないURLにアクセスした際 404の表示が違いますがその生の404ページのことです。 こういったことを実現したい場合phpで可能なのでしょうか それともapacheでの設定が必要になるのでしょうか。
回答: ブラウザの実装依存によりますが、少し調べてみました。 Internet Explorer ではレスポンスページのサイズが 512バイト以下であれば、stackoverflow - カスタムエラーページが IE で表示されない で書かれているようにブラウザ側の 404 ページが表示される動作になっています。(ただし、ユーザの設定でサーバ側のコンテンツを表示するように変更が可能です) Google Chrome では stackoverflow - Change Chrome 4xx Page に書かれているように chrome.webNavigation という API 経由で行うようですが、ハードルは高そうです。