【发布时间】:2014-08-19 21:14:38
【问题描述】:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /qsg/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?Item=$1 [L]
</IfModule>
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /qsg/
RewriteCond %{HTTP_HOST} ^example\.com [NC]
RewriteRule ^ http://www.%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?Item=$1 [L]
</IfModule>
我试图寻找答案,但一直找不到。
我正在尝试重定向: http://example.com/qsg/abcd 到 http://www.example.com/qsg/index.php?Item=abcd
当 URI 中存在 www 时,我可以正常工作。当我删除 www 时,它会重定向到 http://www.example.com/404.shtml
我已经尝试了上述两种方法,结果都相同。我只是无法弄清楚我做错了什么。我已经看到了很多其他应该可以使用的示例,但不适用于我。我的 .htaccess 文件有问题吗?是否有其他原因导致重定向错误?
注意:以上两个重写都不包含在文件中。我已经独立尝试过。
【问题讨论】:
标签: apache .htaccess mod-rewrite redirect