在index.php
中使用mod_rewrite删除.htaccess
有很多答案,但我需要从传入的网址中删除index.php?
并将其全部重写,即/index.php?pagename.php
到{{ 1}}。
其中任何一个都单独工作,并删除/pagename.php
1)
index.php
2)
RewriteBase /
RewriteRule ^index.php?/(.*)$ $1 [R=301,L]
但不是RewriteBase /
RewriteCond %{THE_REQUEST} ^GET.*index\.php [NC]
RewriteRule (.*?)index\.php/*(.*) /$1$2 [R=301,NE,L]
,因为网址如下所示:?
问题是example.com/?pagename.php
是正则表达式中的一个特殊字符,所以如果添加了它,我知道它需要被转义。但这些都不起作用:
1)
?
2)
RewriteBase /
RewriteRule ^index.php\??/(.*)$ $1 [R=301,L]
如何正确转义RewriteBase /
RewriteCond %{THE_REQUEST} ^GET.*index\.php\? [NC]
RewriteRule (.*?)index\.php\?/*(.*) /$1$2 [R=301,NE,L]
中的?
?
这个答案对我不起作用;它会离开index.php?
:Mod_rewrite rule to remove index.php
除此之外:两个重写规则之间是否有明显的差异?
答案 0 :(得分:1)
您可以在站点根目录中使用此规则.htaccess:
.row {
margin-right: -15px;
margin-left: -15px;
}