Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/.htaccess/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Apache 仅将非www重定向到www-忽略所有子域_Apache_.htaccess - Fatal编程技术网

Apache 仅将非www重定向到www-忽略所有子域

Apache 仅将非www重定向到www-忽略所有子域,apache,.htaccess,Apache,.htaccess,我感到惊讶的是,谷歌搜索这篇文章并没有给我的问题带来任何有用的解决方案 我只想将非www请求重定向到www。。但如果它是子域,我希望它忽略它 RewriteEngine On RewriteCond %{HTTP_HOST} ^domain.com [NC] RewriteRule ^(.*)$ http://www.domain.com/$1 [R=301,L] 这会将非www重定向到www,但如果我输入子域,它会在其前面附加一个“www.”。。我需要停止这种行为。 还要考虑到HTTPS:

我感到惊讶的是,谷歌搜索这篇文章并没有给我的问题带来任何有用的解决方案

我只想将非www请求重定向到www。。但如果它是子域,我希望它忽略它

RewriteEngine On
RewriteCond %{HTTP_HOST} ^domain.com [NC] 
RewriteRule ^(.*)$ http://www.domain.com/$1 [R=301,L]
这会将非www重定向到www,但如果我输入子域,它会在其前面附加一个“www.”。。我需要停止这种行为。

还要考虑到HTTPS:

RewriteCond %{HTTP_HOST} ^[^.]+\.[^.]+$
RewriteCond %{HTTPS}s ^on(s)|
RewriteRule ^ http%1://www.%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

还要考虑到HTTPS:

RewriteCond %{HTTP_HOST} ^[^.]+\.[^.]+$
RewriteCond %{HTTPS}s ^on(s)|
RewriteRule ^ http%1://www.%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

我已经做了同样的事情,这对我来说很有效

RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]

我已经做了同样的事情,这对我来说很有效

RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]

我尝试了你的代码,但它似乎仍然将一个子域重定向到“www.subdomain.example.com”,该子域创建了一个循环,并不断附加www.infinite timesadded链接,该链接应该可以解决你的问题(未经测试)它的后期XD我认为如果你硬编码该域,我的第二个选项将起作用(请参阅答案)有效的答案低于公认的答案。。你应该把它贴在这里。我试过你的代码,但它似乎仍在将子域重定向到“www.subdomain.example.com”,它创建了一个循环并不断添加www.infinite timesadded链接,该链接应该可以解决你的问题(未测试)它的后期XD。如果你对域进行硬编码,我想我的第二个选项会起作用(见答案)有效的答案低于公认的答案。。你应该把它贴在这里