2

.htaccessファイルに次の書き換えルールがあります。

RewriteEngine on
RewriteRule ^news/([0-9]+)/?$ /?action=news&start=$1 [L]
RewriteRule ^man/([a-zA-Z0-9_]+)/?$ /?action=man&page=$1 [L]
RewriteRule ^([a-zA-Z0-9_]+)/?$ /?action=$1 [L]

その後はすべて/?、オプションの末尾のスラッシュをチェックする a で終わります。これは機能します。つまり、またはのいずれhttp://www.site.com/news/http://www.site.com/newsを使用してnewsページにアクセスできることを意味します。これが私が望むものです。問題は、http://www.site.com/news/正常に動作し、静かにリダイレクトされ、楽しいものすべてが何らかの理由http://www.site.com/newsで目に見えてリダイレクトされることです。http://www.site.com/news/?action=newsどちらも同じサイトを思いついたのですが、何らかの理由で末尾のスラッシュを外すと、URL が変わって見栄えが悪くなります。

これで何が起こっているのですか?私の.hyaccessファイルには他のルールはありません。http://www.site.com/news/0また、同じ問題に悩まされてhttp://www.site.com/news/0/いないことも指摘します。両方とも目に見えないようにリダイレクトしhttp://www.site.com/?action=news&start=0ます。これが私が望んでいることです。それは、その 3 番目の規則にのみ問題があるようです。

少しでも役に立てば、そのサイトは SourceForge.net にあります。

4

2 に答える 2