以下のように設定して、item.php?id=1ならitem1.htmlと表示するようにしています。
RewriteRule item([0-9\-]+)\.html item.php?id=$1
しかしパラメーターが、item.php?id=1&page=1
の場合はページが表示されません。
おそらく書き方が悪いと思うのですが、どの部分を修正すればよいのでしょうか?
出来れば、&page以降、パラメーターが増えた場合にも対応出来る書き方を教えていただければと思います。
RewriteRule item([0-9\-]+)\_([0-9\-]+)\.html item.php?id=$1page=$2
質問が曖昧なので具体例がないと答えにくいですが、KUROXさんの回答を補足して回答。
item1.html -> item.php?id=1
item1_2.html -> item.php?id=1&page=2
item1_2_3.html -> item.php?id=1&page=2¶m=3
…
としたいなら、
RewriteRule item([0-9\-]+)\.html item.php?id=$1page=$2 RewriteRule item([0-9\-]+)_([0-9\-]+)\.html item.php?id=$1&page=$2 RewriteRule item([0-9\-]+)_([0-9\-]+)_([0-9\-]+)\.html item.php?id=$1&page=$2¶m=$3 …
item1.html -> item.php?id=1
item1.html?page=2 -> item.php?id=1&page=2
item1.html?page=2¶m=3 -> item.php?id=1&page=2¶m=3
…
な感じにしたいなら、
RewriteRule item([0-9\-]+)\.html item.php?id=$1 [QSA]
すみません。質問が悪かったです。
item.php?id=1の場合はitem1.htmlで良いのですが、
item.php?id=1&page=1の場合
item1.html?&page=1
と、&を付けてパラメーターを表示したいのです。(なぜなら、id以外はパラメーターが付いて欲しいからです)