サーバー

永久引越しの謎

2013年10月06日
Webページを永久引越しする時、古いページの様々な情報を引き継ぎたいことがあります。

ブラウザからのアクセスは新しいページへリダイレクト、クローラーにはページ情報を引き継いで貰う方法はいくつかあります。
詳しくは割愛しますが、【.htaccess】を使いリダイレクトする方法が一番良いでしょうか。

今回は引っ越すページは1ページだけ、その上PHPを使っているので、【.htaccess】ではなく、PHPにソースを記述することにしました。

古いページ(http://oldsite.xxx/old.php)へ
Header("HTTP/1.1 301 Moved Permanently");
Header("Location: http://newsite.xxx/new.php");
と書けばOKです。

いざブラウザから古いページへアクセスすると、とんでもないことが!!!
http://newsite.xxx/new.php
ではないページへリダイレクトされてしまっています。

本番サイトの前に、テストサイトで試してみたのですが、その時リダイレクト先に設定していたページへリダイレクトされてしまってます。

今日は他のテストも行い、そのテストでは【.htaccess】のリダイレクトを使いました。その時、操作を誤り【.htaccess】を思いもしないサーバーのディレクトリにアップしてしまったのかと思い、サーバーの中を探し回りました。
ですが見当たりません。

http://oldsite.xxx/old.php のソースを書き変えてエコーを吐かせてみました。なんと!無視です。エコーは吐かず、リダイレクトされてしまいます。
つまり、http://oldsite.xxx/old.php に何と書こうと、
Header("HTTP/1.1 301 Moved Permanently");
Header("Location: http://newsite.xxx/new.php");
が実行されているのです。

なんじゃぁこりゃぁぁぁぁ!!!!!

2時間ほどあずった挙句、思いついたのが、『ブラウザが勝手にリダイレクトしてる?』でした。試しに別のブラウザからアクセスすると、あっさり正しいURLにリダイレクト・・・されました。

テストに使っていたのはIE9です。
履歴を消せばちゃんと動くかと思い、消してみましたが、駄目でした。
色々やってみた結果、【ツール-閲覧履歴の削除】で【お気に入りWebサイトデータを保持する】のチェックを外して削除するとリダイレクトの履歴が削除されるようです。

思い出してみると、テストのとき使用したファイルを、そのまま本番サイトにアップしてしまった記憶があります。
なので、初回アクセス時に、テストサイトのページへリダイレクトされ、それがブラウザの一時ファイルに残っていたようです。
2回目以降のアクセスはブラウザの一時ファイルの方が、優先されるようで、テストサイトのページへリダイレクトされ続けた、というのが真相のようです。

やれやれ、数分もかからず終わるはずの作業が、2時間弱かかってしまいました。
コメントの書き込み
コメント
2018年12月
          1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31
先月
来月
カテゴリ
検索
関連サイト
プロフィール
【ネットネーム】
みゅー

キャラクター by ツカエルサイト


【趣味】
・プログラミング
・写真
・楽器演奏
・手芸
・日曜大工
・家の中の不便を便利に
・考える
・自然科学
・猫と戯れる
・ジグソーパズル

【仕事】
・派遣社員でSE・PGやっていました。次の良い仕事がみつからないので、ビジネスへ注力しようと思っています。
・経験言語:VB6、VB.NET、PHP、Perl、JAVA、Oracle、SQLServer、PostgreSQL



【名前】
アン(足)

2014年4月22日生まれ 女の子
あだ名は くノ一
普段は普通にしゃべりますが、興奮すると『ニャ』を連発します

【趣味】
・狩
・ご飯を食べる
・ママのお手伝い

【仕事】
ママのビジネスの看板招き猫
ママの代わりにPC入力
仕事中のママの右腕を温める
ママに心配をかける
いろんな事をしでかしてママを退屈させない

RSSフィード
Tweet