这是我的Redirect AMP页面的常规页面代码。
<meta name="original-source" content="https://www.themobilesapp.com/<?= $abc; ?>">
<link rel="canonical" href="https://www.themobilesapp.com/<?= $abc; ?>">
<link rel="amphtml" href="https://www.themobilesapp.com/ampspecification/<?= $abc; ?>">
普通页面网址是https://www.themobilesapp.com/Nokia-Lumia-638-specifications-3029
这工作正常,AMP页面网址不工作https://www.themobilesapp.com/ampspecification/Nokia-Lumia-638-specifications-3029但这个放大器工作正常,当我添加ampspecification.php和其他传递。
但是当访问AMP页面网址时,它会显示以下错误: -
内部服务器错误服务器遇到内部错误或配置错误,无法完成您的请求。请通过[email protected]与服务器管理员联系,告知他们此错误发生的时间以及您在此错误发生之前执行的操作。服务器错误日志中可能提供了有关此错误的更多信息。此外,尝试使用ErrorDocument处理请求时遇到500内部服务器错误错误。
htaccess文件包含所有代码
Options +FollowSymLinks -MultiViews -Indexes
<IfModule mod_rewrite.c>
DirectoryIndex index.php
RewriteCond %{HTTP_HOST} ^themobilesapp.com$ [NC]
RewriteRule (.*) https://www.themobilesapp.com/$1 [R=301,L]
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}\.php -f
RewriteRule ^(.*)$ $1.php
ErrorDocument 404 404error.php
RewriteRule ^([A-Za-z0-9-]+)$ specification.php?abc=$1 [L]
RewriteRule ^news/([A-Za-z0-9-]+)?$ news.php?abc=$1 [L]
RewriteRule ^ampnews/([A-Za-z0-9-]+)?$ ampnews.php?abc=$1 [L]
RewriteRule ^profile/([A-Za-z0-9-]+)?$ profile.php?id=$1 [L]
</IfModule>
您必须针对此情况编写特定规则,请尝试使用以下内容并让我知道结果。
RewriteRule ^ampspecification/([A-Za-z0-9-]+)$ ampspecification.php/$1 [L]
我假设您要将页面重写为ampspecification.php / test_url。
在上面我们重写了在启动时具有'ampspecification'的url。
编辑:
RewriteRule ^ampspecification/([A-Za-z0-9-]+)$ specification.php?abc=$1 [L]
RewriteRule ^ampspecification/([A-Za-z0-9-]+) /ampspecification.php?abc=$1 [L]
此代码行解决了我的问题。