我从我们的网站上删除了 Amp 模块,并且我需要从所有 URL 的中心删除 amp 字。
使用 Nginx Web 服务器为例:
mysite.com/shirt/nike?amp=1&product_list_dir=asc&product_list_order=off
应该:
mysite.com/shirt/nike?&product_list_dir=asc&product_list_order=off
或者
mysite.com/shoes/nike?amp=1&product_list_dir=asc&product_list_order=off
应该 :
mysite.com/shoes/nike?&product_list_dir=asc&product_list_order=off
请帮忙谢谢!
答案1
我相信这会起作用。
server {
listen 80;
server_name mysite.com;
location / {
if ($args ~* (.*)(\?|&)amp=1(&.*|$)) {
set $args $1$2;
}
rewrite ^/(.*)$ /$1$is_args$args last;
}
# ... other server configuration ...
}
您必须在 Nginx 上编辑虚拟主机。它应该位于此目录中...
/etc/nginx/sites-available/mysite.com
在上面的配置中,您首先应使用 if 块中的正则表达式检查查询字符串是否包含“amp=1”参数。如果包含,我们使用 set 指令从查询字符串中删除该参数。然后,我们使用 rewrite 指令重写不包含“amp=1”参数的 URL。此配置应该适用于您提供的示例。
然后测试你的 Nginx 配置是否没有冲突
sudo nginx -t
如果没有冲突,则只需软重新加载您的 Nginx。
sudo nginx -s reload
我希望这对你有用。