HTTP301リダイレクト .htaccess を実際に試して理解した

特定のファイルを別のページに転送するしたくなったのですが、なにせ apache素人。

どうしたらいいものか、wordpressなら管理ページから設定できることは知っていますが、今回はFTPでアップしたZipファイルでした。

そもそも1ファイルを転送できるの?と思う訳です。調べたらできましたが、実際の作業例があまり見つからなかったのでまとめました。

元々のZipファイル

http://monochrome-photo.info/tmp/orz_20130320.zip

大好評の親指シフト Orzレイアウト 開発中の古いバージョンZipファイルです。とりあえずアップしたのですが、最新ファイルの記事ページに飛べば良いなと思いました。

.htaccess

HTTP301リダイレクトつまり転送を設定できることは分かりました。301って聞いたことがありますよ、使ったことはないけど。

問題は2つ。

  • どうファイルに書くのか?
  • .htaccessファイルをどこに置くのか?

間違ったらサイト全体に影響します。なので tmp ディレクトリにファイルを設置したいのです。ルートに置くのは危険だと判断しました。そもそもどう書くの?です。

目標

http://monochrome-photo.info/tmp/orz_20130320.zip設定ファイル 配布ページ の https://mono96.jp/?p=11217に転送したい。

.htaccessファイルは「tmp」フォルダに設置する。

この2つです。

設定

[text][/text]

Redirect permanent /tmp/orz_20130320.zip https://mono96.jp/?p=11217

[text][/text]

設定のスクリプトです。これを/tmp/にアップしました。

Redirect permanentが”転送しなさい”ですね。Redirect permanent 転送元 転送先 3つを半角スペースで繋ぎます。

ここで迷ったのが、転送元と転送先の書き方です。転送先はhttp://で始まるURIアドレスです。転送元はサーバールートからのパスです。.htaccessファイルをどこに置いてもルートからのパスで書きます。

.htaccessファイルと転送元のファイルが同じディレクトリなので、ついつい転送元を「/orz_20130320.zip」や「orz_20130320.zip」と書きたくなりますが、これらでは有効になりません。僕は1時間はまりました...なので、この記事を書きました。

あとはコンテンツを書くのみです。文章が苦手でしたが下の本は分かりやすくブログを書くのに役立ちました。おすすめです。

この記事を書いた人