PHP

ページが見つからない時(404)にNginxとCodeigniterでトップページを表示する

とあるサイトへのアクセス状況がいまいちだったので、ドメインはそのままでサイトのジャンルを変えてリニューアルしてみました。

その際、不要な URL パスがいくつか残ってしまっているので 404 のアクセスが出続けます・・・。

Google に一度でもインデックスされてしまえば、404 でも容赦なしにアクセスはやってきてサーチコンソールが汚れて気になりますよね。

また、Google のインデックスから消えるまでは、検索結果から飛んでくるユーザーもいるわけで、404 を見せるよりはトップページへリダイレクトさせておいた方が何か恩恵があるかもしれません。

nginxの404のハンドリング設定

nginx で 404 のステータスコードを検知した時は error_page ディレクティブで内部の URL パスや外部の URL を設定します。

前者は同じサイト内のトップページへ、後者は別ドメインへアクセスを誘導します。

アプリに依存した設定変更

しかし、対象のサイトは PHP の Codeigniter のフレームワークを使っているアプリだったので、404 はアプリ内で独自にハンドリングされてしまっていました。

よって、フレームワーク側のルーティング設定を変えてトップページを表示させます。

リダイレクトではないので、表示されている URL は 404 のパスになりますが、トップページで canonical を指定しているので害はないでしょう。

どうしてもダイヤが必要な場合

時間を短縮したい。お店屋さんの生産枠を増やしたい。など、ゲームを進めるうえで、どうしても少しだけダイヤを課金したくなる時ってありますよね。

そんな時は、楽天市場で「itunesカード」を購入すると楽天ポイントの還元があってお得です。

iOS(iPhone)の人に限られてしまいますが、初回購入時に 500 円オフのキャンペーンをしていたり、楽天ポイントも最大で 16 倍とものすごくお得です。

[商品価格に関しましては、リンクが作成された時点と現時点で情報が変更されている場合がございます。]

App Store & iTunes ギフトカード(3,000円)
価格:3000円(税込、送料無料) (2020/5/24時点)