プロが教えるわが家の防犯対策術!

すいません。今データベースを使った簡単なウェブサイトを作っていまして
mod_rewriteについて分からないことがあります。
(phpなど勉強を始めたばかりで質問の意味が分かりにくいかもしれません)

やりたいことは実際には存在しないhtmlのサイトを検索にスクロールしてもらって
クライアントから要求があったアドレスに従いデータベースから任意のデータを表示すると
いったものです。


例えば 1000.html 1001.html 1002.html・・・・・に要求があった場合phpの$_SERVER['HTTP_HOST']を
使って要求のあったアドレスを抜き取り任意のhtmlを表示させるといった事を考えています。

リダイレクト自体は初心者向けのサイトを見て簡単にできたのですが、
1000.html 1001.html 1002.html・・・
の部分を一度に表記する方法はないでしょうか。(1000.html~5000.htmlのようなこの範囲を全て条件としてRewriteCondに入れたい)
最終的には5000ページ程度を考えているため一つ一つ記載するのは難しいです。



RewriteEngine on
RewriteCond %{HTTP_HOST} ^(1001\.html)(:80)? [NC]
RewriteRule ^(.*) http://abcdefg.com/ [R=301,L]

A 回答 (1件)

正規表現を使うとよいでしょう。



RewriteEngine on
RewriteRule /([0-9]{4}\.html)$ http://example.com/ [R=301,L]

※ファイル名が 0~9(つまり数字)が4つ連続して、.html で終わる($)場合、という意味。
[ mod_rewrite 正規表現 ] で検索してみて
    • good
    • 0

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