0

だから、これが私のhtaccessのきれいなURLコードがどのように見えるかです:

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond  %{QUERY_STRING} !^myvar=0
RewriteCond %{REQUEST_URI} !\..*$
RewriteRule ^([^/]*)/?$ /$1.php?myvar=0 [QSA,L]

この htaccess コードは、ルート上のファイルが .php、末尾のスラッシュ、または何も使用しないことを許可します。したがって、blah.com/blah.php は動作します blah.com/blah は動作します blah.com/blah/ は動作します

ただし、ルートにフォルダーがある場合、たとえば名前が「news」である場合、ルートのファイル「news」はクリーンな URL を取得できません。したがって、blah.com/news.php は機能しますが、blah.com/news と blah.com/news/ は両方とも機能しません。

何らかの理由で、フォルダー内のファイルにはファイル拡張子 (.php) を付ける必要があるため、blah.com/news/obama.php は機能し、blah.com/news/obama と blah.com/news/obama/ は両方とも機能しません。

.htaccess コードの何が問題なのですか?どうすれば修正できますか?

tl;dr .php が機能し、末尾のスラッシュが機能し、末尾のスラッシュが機能しないようにする htaccess コードはありますか? htaccessについてはまったくわかりません。

また、昨日同じ質問を投稿しましたが、返信がありませんでした。理由がわからない。紛らわしいところがあれば、それを解決しようとします。ありがとう!

4

1 に答える 1

0

多分

RewriteBase /
RewriteRule ^(.*)(?=\.php/?)?$ /$1.php?myvar=0 [QSA,L]

助けることができます。この場合、ログファイルは本当に黄金色です。

于 2011-06-26T21:11:31.800 に答える