【发布时间】:2016-06-01 18:33:33
【问题描述】:
事实上,我正在编写一个小的 PHP 脚本。我创建了一些规则来将非 www 重定向到 www 版本这是我的代码:
RewriteEngine On
RewriteCond %{HTTP_HOST} !^www\.
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]
RewriteRule app-([0-9]+)\.html app.html?id=$1 [L,QSA]
AddType application/x-httpd-php5 .html .htm
重定向主页时它工作正常,但是当我想重定向 site.com/app-9.html 例如它只是重定向到 www 版本,如下所示: www.site.com/app.html?id=9。 它应该将 site.com/app-9.html 重定向到 www.site.com/app-9.html。请问我怎样才能做到这一点?
通过:
site.com/app-9.html
当前结果:
www.site.com/app.html?id=9
要求的结果:
www.site.com/app-9.html
【问题讨论】:
-
如果不需要,为什么要添加
RewriteRule app-([0-9]+)\.html app.html?id=$1 [L,QSA]。 -
@RohitGoyani 请检查更新版本!
-
如果不需要,您应该删除
RewriteRule app-([0-9]+)\.html app.html?id=$1 [L,QSA]。之后工作正常。 -
@RohitGoyani 这是必需的:)
-
我们可以只为
app-9.html停止这条规则吗?意味着它永远不会重定向到app.html?id=9
标签: php apache .htaccess redirect mod-rewrite