我们有我们的大多数htaccess规则如下
RewriteRule page_a.php page_main.php?param=alpha
因此,当触发以下表单的 URL 时,页面将返回结果www.sitename.com/somethings..../page_a.php
我们不希望这样的请求成功,因为这会产生错误的索引。有没有办法确保此页面仅在请求的形式为该页面时才执行www.sitename.com/page_a.php
你能帮忙吗?
是的,
请确保在正则表达式中排列开始/结束锚点:
RewriteRule ^page_a.php$ page_main.php?param=alpha [L,QSA]
只需强制匹配项位于 URL 的开头:
RewriteRule ^/*page_a.php page_main.php?param=alpha [L,QSA]
将其更改为:
RewriteRule ^/page_a.php page_main.php?param=alpha
^
正则表达式元字符表示字符串的开头,因此这样您就需要从一开始就匹配整个 URL。它的反面是与字符串末尾匹配的$
。