与新版版本有奇特的问题。
类似 /news
的 URI 将正确匹配, 因为 news.php
已经存在。 但是, /news/1900-01-01/ title
将和 /news
一样匹配!
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteCond %{REQUEST_URI} !/$ #workaround for URIs ending in a slash passing the previous check
RewriteRule ^(.*)$ debug.php?page=$1.php&req_filename=%{REQUEST_FILENAME}&req_uri=%{REQUEST_URI} [L]
如果使用 /news
运行,则产生预期结果:
page=/news.php
req_filename=/home/domain/public_html/news
req_uri=/news
如果以 /news/1900-01-01/标题
运行,则产生:
page=/news/1900-01-01/title.php
req_filename=/home/domain/public_html/news
req_uri=/news/1900-01-01/title
为何这两个词的reQeste_FILENAME}{/code>都是一样的?
我已经对新闻项目有一个变通办法; 将 < code> rewrite Rules {news/ ([0- 9]{4}- [0- 9]{2}- [0- 9}{2}) / ([a- zA- Z0- 9-]+]$ new- items.php?date= 1 & amp; title= 2 [L] 移至此片段上方。 但是, 我想了解 2个独特的 URIs 如何解决相同的非性别歧视者( 文稿添加了.php) 文件 。