各位早上好,遇到的问题是
网站,有二级域名,现在可以正常访问,但是不带www的却访问到二级的去了,
以下为.htaccess代码
rewriteengine on
rewritebase /
rewritecond %{http_host} ^www.518visa.net$
rewritecond %{request_uri} !^/
rewritecond %{request_filename} !-f
rewritecond %{request_filename} !-d
rewriterule ^(.*)$ /$1
rewritecond %{http_host} ^www.518visa.net$
rewriterule ^(/)?$ / [l]
#以下为二级,如果有更简单的希望指教,谢谢
rewritecond %{http_host} ^([a-za-z]*[^www\b]).518visa.net$
rewritecond %{request_uri} !^visalist/
rewritecond %{request_filename} !-f
rewritecond %{request_filename} !-d
rewritecond %{http_host} ^([a-za-z]*[^www\b]).518visa.net$
rewriterule ^([1-9]\d*).html($) visalist/visa_detail.php?id=$1
rewriterule ^(/)?$ visalist/ [l]
网址为www.518visa.net,非外链广告,麻烦看看,谢谢了。
下图红框选中的,点进去为二级域名
我现在需要的就是不带www访问时直接转到带www,如abc.com/a.html转到www.abc.com/a.html,我用了
rewritecond %{http_host} !^www.518visa.net$ [nc]
rewriterule ^(.*)$ http://www.518visa.net/$1 [l,r=301]
这个也不行
谢谢了,在线等
回复讨论(解决方案) 我用的是如下:
#301rewritecond %{http_host} ^xxx.net [nc]rewriterule ^(.*)$ http://www.xxx.net/$1 [l,r=301]#aaaa.xxx.net - is okrewritecond %{http_host} (?!www|ww)^[a-z0-9\-]+.xxx.net$rewriterule ^/?$ /%{http_host}rewriterule ^/([a-z0-9\-]+).xxx.net$ /1.php?keyword=$1
如果不行, 你看看你的apache里面的documentroot设置了什么
如果还不行, 你可以考虑用变通的方法。
建立一个xxx.net的web,然后在这个web里面做一个htaccess 301到www