用于AMP的PHP多重修改重写规则

时间:2018-02-25 14:31:03

标签: php .htaccess mod-rewrite amp-html

我在使用以下php重写模式代码时遇到问题,有人在过去编写了该网站,一切都很复杂。所有的cms都来自index.php?goto string。

现在我想要放大器页面,

/amp/blog.amp.php?catidx=how-to-fix-misshapen-teeth

/amp/blog/topic.html,我试过这段代码,但没有用。

RewriteCond %{REQUEST_URI} "^(.+)/amp/blog.amp.php?catidx=$"
RewriteCond "%{DOCUMENT_ROOT}/amp/blog/$1.html"  -f
RewriteRule "^(.+)/amp/blog/$" "%{DOCUMENT_ROOT}/amp/blog.amp.php?catidx=$1"  [L]

*现有的Htaccess代码*

Options +FollowSymLinks


RewriteEngine on
ReWriteRule ^([a-z\-]+)/([a-z\-0-9]+)/([a-z\-0-9]+)/([a-z\-0-9]+)$  index.php?goto=$1&catidx=$2&cat_idx=$3&cat_idx2=$4 [L,NC]

ReWriteRule ^([a-z\-]+)/([a-z\-0-9]+)/([a-z\-0-9]+)$    index.php?goto=$1&catidx=$2&cat_idx=$3 [L,NC]

ReWriteRule ^([a-z\-]+)/([a-z\-0-9]+)$  index.php?goto=$1&catidx=$2 [L,NC]

ReWriteRule ^([a-z\-0-9]+)$ index.php?goto=$1&mailsuccess=$2 [L,NC]

RewriteCond %{THE_REQUEST} /index\.(php|html?) [NC]

RewriteRule ^(.*)index\.(?:php|html?)$ /$1 [L,R=302,NC,NE]
[L,NC]

如果你能帮助我,我会很高兴。

1 个答案:

答案 0 :(得分:0)

我删除了这些因为他们覆盖了所有内容。

ReWriteRule ^([a-z\-]+)/([a-z\-0-9]+)/([a-z\-0-9]+)/([a-z\-0-9]+)$  index.php?goto=$1&catidx=$2&cat_idx=$3&cat_idx2=$4 [L,NC]

ReWriteRule ^([a-z\-]+)/([a-z\-0-9]+)/([a-z\-0-9]+)$    index.php?goto=$1&catidx=$2&cat_idx=$3 [L,NC]

并添加了此代码;一切都像魅力一样。

ReWriteRule ^amp/blog/([a-z\-0-9]+).amp.html$   amp/blog.amp.php?catidx=$1 [L,NC]