一直把RewriteEngine ,RewriteCond 规则写在httpd.conf文件中,直接写在文件尾部,怎么都不能重定向。(mod_rewrite.so)模块也存在,折腾了N久,今天终于豁然开朗,配置成功。
仔细研读了相关文章,搞明白 RewriteCond 的生效域: server config, virtual host, directory, .htaccess。除这些外,写在任何地方都是不会生效的,这也是之前配置完未生效的主要原因。
但又暴露出另外一个问题,abc.com重定向至www.abc.com后,URL处显示域名为www.abc.com//,域名后面多了两个斜杠,不知道有没有遇到类似问题的朋友,帮忙解答下如何避免此问题!!!!!
扩展阅读 :Apache之AllowOverride参数详解
问题已解决。
RewriteEngine on
RewriteCond %{HTTP_HOST} 163.com [NC]
RewriteRule ^/(.*) http://www.163.com/$1 [r=301,nc]
以上写法变换成:
RewriteEngine on
RewriteCond %{HTTP_HOST} 163.com [NC]
RewriteRule ^/(.*)$ http://www.163.com$1 [r=301,nc]
手机扫一扫,欢迎关注公众号
关注程序员成长