如果与 .htacces 中的特定正则表达式匹配,则将页面重定向到 410

如果与 .htacces 中的特定正则表达式匹配,则将页面重定向到 410

第一次使用 .htaccess,所以我来这里寻求一些帮助,因为网络上没有包含信息的文件(或者我只是找不到它们 :/)。

所以我的想法是我想将以/2//3/...(数字)结尾的链接重定向到该error410页面。

所以我想出了这个效果很好的正则表达式^(.*?)\/(?!(?:404|410)$)\d+$

在这里测试

如果我明白这是如何工作的,那么这就是正确的解决方案:

RewriteCond %{QUERY_STRING} ^(.*?)\/(?!(?:404|410)$)\d+$ [NC]
RewriteRule . - [G]

你觉得这个有用吗?我不想玩学徒巫师。

答案1

它不会起作用。您正在针对%{QUERY_STRING}变量测试模式。此变量不存储 URI 内容,而是存储由GET或发送的查询参数POST

发送GONE状态,使用以下规则:

RewriteEngine On
RewriteRule ^\d+/?$ - [G]

相关内容