如何在Nginx、Apache、Cloudflare中将AMP页面重定向到非AMP页面?
你是否在网站上禁用了AMP,并在Google搜索控制台中收到了“引用的AMP URL不是AMP”的错误?
加速移动页面(Accelerated Mobile Pages,常称为AMP)是由Google最初创建的开源网页组件框架,您可以使用它来轻松创建以用户为先的网站、故事、电子邮件和广告。
基本上,它是一个精简版的HTML页面,旨在超轻量化和快速加载。该平台专为速度和可读性以及移动设备的大容量缓存而设计。然而,作为最近一项由Google发布的公告的一部分,他们正在从Top Stories的资格要求中移除AMP。
如果您计划退出AMP,则必须禁用AMP插件(如果使用WordPress)。但问题是,search engines等搜索引擎仍然将指向您旧页面末尾的/amp并将您的访问者带到“404 – 页面未找到”错误。
或者,您将收到如下错误。
那么,在停用AMP后,如何避免此类错误呢?
很简单!
您需要在禁用AMP后正确重定向这些页面,以避免出现这种情况。
如果您想要将AMP页面重定向到非AMP页面,您来对了地方,因为我们将讨论在流行的Web服务器和服务中可以采取的步骤。
那么,让我们开始吧。
Nginx
Nginx配置文件存储在nginx.conf中。
该文件应该位于Linux服务器上的/etc/nginx或/etc/nginx/conf.d(对于NGINX的开源版本,位置可能不同,如/usr/local/nginx/conf或/usr/local/etc/nginx)。
编辑nginx.conf文件,其中存储了您的站点/域名配置,您需要在server {块中添加以下重写行以启用AMP到非AMP重定向:
rewrite ^/(.*)/amp http://example.com/$1 permanent;
将example.com替换为您自己的域名并保存文件。重新启动nginx服务器以使重定向更改生效。
$ sudo systemctl restart nginx
现在,您可以通过浏览器验证重定向是否起作用。
Apache
Apache使用.htaccess指令。您可以编辑域的根目录中的.htaccess文件,并添加以下行以将AMP重定向到非AMP:
RewriteEngine On
RewriteCond %{REQUEST_URI} (.+)/amp(.*)$
RewriteRule ^ %1/ [R=301,L]
保存更改到.htaccess文件并通过浏览器验证重定向。
您也可以将上述代码用于WordPress或其他CMS的链接_2。如果您对.htaccess修改不确定,可以与您的托管提供商联系。
Cloudflare
如果您使用的是Cloudflare,那就轻松多了。您可以利用规则(在登录后在顶部图标栏中找到)。
- 您可以使用以下匹配URL。
https://example.com/*/amp/
- 设置为转发URL,301为目标URL,如下所示。
https://yaoweibin.cn/$1
- 点击保存并部署
这就是Geekflare所做的。
等待几秒钟,然后尝试访问AMP URL,您会注意到它被重定向到非AMP页面。
总结
我们简要介绍了AMP以及为什么要使用它。禁用AMP后,将AMP重定向到非AMP是必要的步骤,以避免由于404错误而导致您的站点访问者流失。可以使用上述永久重定向轻松实现此目的。