2012-03-13 11 views
0

RewriteRuleが影響を受けるように見えない - ちょうど一致しない。.htaccessのトラブルRewriteRule(mod-rewrite)

マイURL:http://www.example.com/users/username/articles/2012/03/12/article-title.php

私の.htaccessコード:

RewriteEngine On 

RewriteRule ^users/([a-zA-Z0-9]+)/articles/$ article.php?url=/users/$1/articles/$2 [L] 

答えて

1

あなただけ記載されているのRewriteRuleは "記事/" で終わるURLをキャプチャします。 (。*)のような残りのテキストをキャプチャするために何かを追加する必要があります。

RewriteRule ^users/([a-zA-Z0-9]+)/articles/(.*)$ article.php?url=/users/$1/articles/$2 [L] 
+0

完璧、ありがとうございます!このルールは、ブラウザに表示されている元のURLを、すべてのブラウザで正しく維持しますか? (「隠された」リダイレクト) –

+1

はい。また、[L]を[L、QSA]に変更して、アプリケーションが追加する追加のクエリ文字列を保持することもできます。 –

+0

'RewriteBase'のないディレクトリごとの相対的な書き直し。 Apacheはこの落とし穴を修正する必要があります。 – Kaz