FLAG Journal

フラッグな日常

技術ブログ

2017/12/26

.htaccessの環境変数で?hoge=以降を受け取る|幡司

やー、悩みました。
.htaccessを使ってhttp:// から https://にリダイレクトをしたいけど、特定のURLだけリダイレクトしたくない
というとき、調べてよく出てくるのは

RewriteCond %{REQUEST_URI} !\.rss$
RewriteRule ^(.*)$ https://hogehoge.jp/$1 [R=301,L]

というやつです。(今回はRSSのURLだけ除外したかったので)

でもこの式だと

http://hogehoge.jp/index.php?url=foofoo/index.rss

みたいなURLを判定することが出来ません。

で、この

?url=**********

の部分を何ていうのかよくわからなかったので調べるのに苦労しました。

「getのパラメータ」とググれば出てくるんですね。言われてみれば確かに。w

そして環境変数は QUERY_STRING で受け取れるそうです。

というわけで今回のさくらのサーバーでのhttp:// → https:// リダイレクトは

RewriteEngine on
RewriteCond %{REQUEST_URI} !\.rss$
RewriteCond %{QUERY_STRING} !\.rss$
RewriteRule ^(.*)$ https://hogehoge.jp/$1 [R=301,L]

となりました。

めでたしめでたし。

keyboard_arrow_left

NEWS一覧へ

HOMEkeyboard_arrow_rightNEWSkeyboard_arrow_right

.htaccessの環境変数で?hoge...