我正在尝试获取重写规则以获取一些参数并将它们转换为获取变量,然后将它们传递给脚本。
所以我的.htaccess中有以下内容,它有效:
RewriteEngine on
RewriteBase /cms/
RewriteRule ^services$ list.php?type=services [L]
然后我想添加另一个规则来停止直接访问脚本 list.php
。所以我添加了以下内容:
RewriteRule ^list.php - [F,NS]
出于某种原因,每当我尝试访问以下网址时,都会出现“禁止”错误:
/cms/services
我假设如果请求不是内部子请求,标志会阻止它被访问,但它似乎完全阻止了我访问脚本。
谁能告诉我这里哪里出错了。几天来,我一直在努力解决这个问题。.htaccess 文件位于通过虚拟主机中的别名访问的目录中,但我知道我的 htaccess 正在被读取,因为当我删除第二条规则时,第一个规则按预期工作。