如何从 URL 中心删除 amp word

如何从 URL 中心删除 amp word

我从我们的网站上删除了 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

我希望这对你有用。

相关内容