我想拒绝通过数据库 ID 地址访问我的所有帖子/页面,例如/?p=1
、 /?p=2
、...等
我正在考虑使用 .htaccess 来执行此操作,并且猜测最好使用 RewriteCond 规则来完成。我已经尝试过了,但似乎不起作用。
RewriteEngine On
RewriteCond %{REQUEST_URI} ^/?p=*
RewriteRule ^(.*)$ - [F,L]
非常感谢任何帮助
最佳答案
根据您显示的示例,请尝试执行以下操作。 请确保在测试您的网址之前清除浏览器缓存。
RewriteEngine ON
RewriteCond %{QUERY_STRING} ^p=[0-9]+ [NC]
RewriteRule ^ - [F,L]
根据 OP 的注释,将 p
或 page
与 =
数字匹配,然后尝试遵循。
RewriteEngine ON
RewriteCond %{QUERY_STRING} ^(p|page)=[0-9]+ [NC]
RewriteRule ^ - [F,L]
关于.htaccess - htaccess 通过正则表达式拒绝对 URI 的访问,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66940976/