アプリ版:「スタンプのみでお礼する」機能のリリースについて

htaccessに下記のように記述しました。

RewriteEngine on
RewriteRule ^([0-9A-Za-z_]+)/$ index.php?p=$1 [L]
RewriteRule ^([0-9A-Za-z_]+)/([0-9A-Za-z_]+)/$ index.php?p=$1&m=$2 [L]
RewriteRule ^([0-9A-Za-z_]+)/([0-9A-Za-z_]+)/([0-9A-Za-z_]+)/$ index.php?p=$1&m=$2&y=$3 [L]
RewriteRule ^sample/test/([0-9A-Za-z_]+)/$ sample/test.php?id=$1 [L]


すると
http://www.○○○.jp/index.php?p=●」

http://www.○○○.jp/●/」

http://www.○○○.jp/index.php?p=●&m=△」

http://www.○○○.jp/●/△/」

http://www.○○○.jp/index.php?p=●&m=△&y=■」

http://www.○○○.jp/●/△/■」
でアクセスできました。

が、
http://www.○○○.jp/sample/test.php?id=★」

http://www.○○○.jp/sample/test/★/」
でアクセスできません。

おそらく、
http://www.○○○.jp/sample/test/★/」を
http://www.○○○.jp/index.php?p=sample&m=test&y=★」
として認識しているためだと思いますが、
対策がわかりません。

このような場合は、どう対処すればよいのでしょうか。

A 回答 (2件)

順番を変えたらどうでしょうか


4番目のルールを1番上に持ってくる
    • good
    • 0
この回答へのお礼

ありがとうございます。
無事解決できました。

お礼日時:2009/09/04 15:26

mod_rewriteは使った事もないですけど、


質問のコードで上からルールを見ていくと

>「​http://www.​○○○.jp/sample/test.php?id=★」
>は
>「​​http://www.​○○○.jp/sample/test/★/」
>でアクセスできません。
testディレクトリっておかしくないですか?
    • good
    • 0
この回答へのお礼

上の三行を削除するとうまく表示されるので、
ディレクトリが間違っているわけではなかったです。

お礼日時:2009/09/04 15:24

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