オリジナルの403ページを表示しよう
2013/06/13
2019/05/23
タグ: 一撃解決, 初心者

WordPressで構築したサイトのほとんどはページが見つからない場合の404ページ(page Not Found)が用意されています。
テンプレートに404.phpを用意することで任意のエラーページを表示させることができますが、許可されていないアクセスに対する403はサーバのデフォルト表示になってしまいます。
どうせなら、403エラーも<オリジナルページを表示させたいものですよね。
レンタルサーバの403ページ
あらかじめ用意されている403ページは味気ないというか、正直ださいです・・・
たとえば、ロリポップレンタルサーバだとこんな感じです。

ロリポップの403ページ
コーポレートサイトやECサイト系なんかだとこれはいただけませんよね。
オリジナルページを作る
ということで、403エラー時にオリジナルページを表示させてみましょう。
htaccessを使える場合は手順としてはそれほど難しくなく、静的HTMLで403.hmtlとして作成してルート直下にアップロードします。
この場合のhtaccessへの追記は以下です。
404ページのようにWordPressの固定ページで403を作り、これを表示させては?と考える方もいるかと思います。
このあたり、同じapacheでもサーバによって若干挙動が違うようですが、基本的に転送となってしまい、403ではなく、301や302でステータスコードが返ってしまいます。
よって、ステータスコードで403を返しつつ、さらにWordPressでの動的ページを表示させるためには、ゴニョゴニョやらなくてはなりません(笑
そんなわけでWordPressであっても、静的な403用のHTMLページを表示させるのが無難です。
WordPressのページを使いたいという要望があれば、そのうち試してみたいと思います。
見本というか、サンプルとしてこのサイトのルート直下にjsという一般のアクセスを許可していないフォルダを作成していますので、アクセスしてみてください。
自前の403ページが表示されます。
ステータスコードのチェックでもきちんと403が返ることが確認できます。
内容はシンプルですが、ベースにされたい方はどうぞご自由にお使いください。
画像も使っていますが、エンコードしてHTMLに埋め込んでありますので、ソースを丸ごとコピペして、403.htmlとしてサーバのルート直下にアップすればOKです。
エラーページにもオリジナリティが必要!?
実施のところ、403でアクセスしてくるユーザーは微妙ですが、404などのエラーページはアクセスしたユーザーが困らないように案内するというのはもちろんのこと、せっかく拾ったアクセスを有効につなげるという意識は大切でみなさん工夫されているようです。
ちなみにこのサイトの404ページはこのような感じです。
https://seous.info/404
人気記事をリスト表示する・ショップ系だと売れ筋商品を掲載するなど、その先を見てみようという工夫がエラーページにも必要ですね。
魅力的なエラーページのサイトを探してみてもおもしろいかもしれませんね!