2016-04-09 9 views
0

私はウェブサイトを作っています。私はどこのパラメータを取得要求を取得するに基づいてページを提供するの世話をするPHPスクリプトを持っています。複数のパラメータとhtaccess

誰かがhttp://test.com/blogに入力すると、それはPHPファイルにリダイレクトされるはずです。 http://test.com/blog/testと入力した場合は、同じファイルにパラメータtestでリダイレクトする必要があります。これも機能します。

私が理解できないことは、誰かがhttp://test.com/blog/test/something/something_elseに入力すると、test/something/something_elseをパラメータとしてスクリプトにリダイレクトする必要があるということです。しかし、それは404エラーを生成するだけです。あなたが正規表現グループのスラッシュ(/)が含まれていない

RewriteEngine on 

    RewriteRule ^blog/?$ /home/blog/index.php [NC,L] 
    RewriteRule ^blog/([A-Za-z0-9-]+)/?$ /home/blog/index.php?params=$1 [NC,L] 

答えて

1

は、ここに私のhtaccesファイルです。

([A-Za-z0-9-]+)~([A-Za-z0-9-/]+)またはより良い意味では、([\w-/]+)です。 \wは、 '1つ以上の英数字と一致する'ことを意味します。