プロが教える店舗&オフィスのセキュリティ対策術

お世話になります。

.htaccessに以下の記述をしてリダイレクトしているのですが、
$1の値によってリダイレクトさせたくない場合、
どのように記述すればよいのでしょうか。

RedirectMatch permanent /abc/(.*)\.jpg$ http://hoge.com/data/.jpg

$1の値は数字で1000以下の場合のみ先頭に0がつきます。
(500の場合は0500など)

これをたとえば$1の値が0300以上(1000以下なので先頭に0がついた数値になります)
ならリダイレクトさせたくないと言った事は可能でしょうか。

・/abc/(.*)\.jpgの部分から$1の値を取得する

・取得した値で先頭に0がつく場合はまず0を排除

if($1 <= 300) {

RedirectMatch permanent /abc/(.*)\.jpg$ http://hoge.com/data/.jpg

}

みたいな感じになると思うのですが、.htaccessでの記述方法がわかりません。

お手数をおかけしますがご教授いただけますと幸いです。

A 回答 (2件)

0001等の一桁や二桁も存在して、先頭の0のみ排除するのでしたら、



RewriteEngine on
RewriteRule ^abc/0([0-2][0-9][0-9])\.jpg$ http://hoge.com/data/.jpg [R=301,L]


0001等の一桁や二桁も存在して、先頭の連続する0を排除するのでしたら、

RewriteEngine on
RewriteRule ^abc/0([1-2][0-9][0-9])\.jpg$ http://hoge.com/data/.jpg [R=301,L]
RewriteRule ^abc/00([1-9][0-9])\.jpg$ http://hoge.com/data/.jpg [R=301,L]
RewriteRule ^abc/000([0-9])\.jpg$ http://hoge.com/data/.jpg [R=301,L]


一桁や二桁はなく、100以上299未満なら

RewriteEngine on
RewriteRule ^abc/0([1-2][0-9][0-9])\.jpg$ http://hoge.com/data/.jpg [R=301,L]


でいけそうな気がしますが試していません。

参考URL:http://webings.net/htaccess/
    • good
    • 0
この回答へのお礼

大変遅くなってしまいまして申し訳ありません。
お忙しい中ご回答いただきありがとうございます。

おかげさまで出来ました。
どうしてもわかりませんでしたのでとても助かりました。
本当にありがとうございました。

お礼日時:2011/05/06 09:33

こんばんは。



http://japache.infoscience.co.jp/rewriteguide/
ここにIF文の書き方が書いてます。
全部説明するのは難しい・・・。
    • good
    • 0
この回答へのお礼

大変おそくなってしまい申し訳ありません。
ご紹介いただいたページを参考に色々やってみたのですが
未熟な点で応用がきかずどうしてもエラーになってしまう状態で出来ませんでした。

詳細ページをご紹介いただきありがとうございました。

お礼日時:2011/05/06 09:35

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!