htaccess - 将所有 EN 页面设置为状态代码 410
htaccess - Set all EN pages to statuscode 410
我正在尝试将网站的所有 EN 页面设置为状态代码 410。URL 如下所示:
https://example.com/en/terms-and-conditions/
https://example.com/en/sitemap/
https://example.com/en/category/page-1/
https://example.com/en/category/page-2/
https://example.com/en/category/page-3/subpage-1/
我尝试了不同的方法,但 none 有效:
RewriteEngine On
RewriteRule ^/en(/.*)?$ - [G,NC]
这也没有用:
RewriteEngine On
RewriteRule ^/en(.*)$ - [NC,R=410,L]
我做错了什么?
当在 .htaccess
中使用重写规则时,URL 路径不以 /
开头,因为这是重写规则的当前“基础”。这与在 Apache 的 .conf
文件中使用重写规则时不同,其中路径 以 /
.
开头
我建议通过将起始斜杠设为可选来编写可在任一位置使用的规则。您只需要在起始斜杠后添加一个 ?
:
RewriteEngine On
RewriteRule ^/?en(/.*)?$ - [G,NC]
我正在尝试将网站的所有 EN 页面设置为状态代码 410。URL 如下所示:
https://example.com/en/terms-and-conditions/
https://example.com/en/sitemap/
https://example.com/en/category/page-1/
https://example.com/en/category/page-2/
https://example.com/en/category/page-3/subpage-1/
我尝试了不同的方法,但 none 有效:
RewriteEngine On
RewriteRule ^/en(/.*)?$ - [G,NC]
这也没有用:
RewriteEngine On
RewriteRule ^/en(.*)$ - [NC,R=410,L]
我做错了什么?
当在 .htaccess
中使用重写规则时,URL 路径不以 /
开头,因为这是重写规则的当前“基础”。这与在 Apache 的 .conf
文件中使用重写规则时不同,其中路径 以 /
.
我建议通过将起始斜杠设为可选来编写可在任一位置使用的规则。您只需要在起始斜杠后添加一个 ?
:
RewriteEngine On
RewriteRule ^/?en(/.*)?$ - [G,NC]