我需要在htaccess中为具有参数P的URL设置301重定向。一个示例URL是http://www.price4india.co.in/vivo-x20-plus-ud-price-in-india-scanner-feature-real.html?p=1028
到http://www.price4india.co.in/vivo-x20-plus-ud-price-in-india-scanner-feature-real.html
在重定向之后,所有在.html之后的内容都将被删除,P=......之后的值可以是任何数值。到目前为止,我已经尝试了下面的查询,但是它不起作用。请提供任何建议...
RewriteCond %{QUERY_STRING} ^p(&|$) [NC]
RewriteRule ^ %{REQUEST_URI}? [R=301,L]
2条答案
按热度按时间xxslljrj1#
使用显示示例,请尝试使用以下.htaccess规则文件请确保仅将.html文件和.htaccess文件保存在根路径中
请确保在测试URL之前清除浏览器缓存。
***注意:***如果您的.htaccess规则中包含更多的规则,其中包括html文件的内部重写,那么您可以将这些规则保留在那些规则之上。
xfb7svmp2#
这几乎是正确的,除了正则表达式
^p(&|$)
是不正确的。这完全匹配p&<anything>
或p
。然而,你需要匹配p=<anything>
(例如^p=
)或p=<number>
(例如^p=\d+
)。当然,这是假设p
URL参数总是出现在URL路径的开头(如你的示例)。例如: