Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/.htaccess/6.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
使用记录的域路由+;CNAME记录+;301在.htaccess中重定向_.htaccess_Mod Rewrite_Dns_Cname_A Records - Fatal编程技术网

使用记录的域路由+;CNAME记录+;301在.htaccess中重定向

使用记录的域路由+;CNAME记录+;301在.htaccess中重定向,.htaccess,mod-rewrite,dns,cname,a-records,.htaccess,Mod Rewrite,Dns,Cname,A Records,比如说,我有一个域名,人们希望将其作为根和“www”来阅读: example.com www.example.com 我能做的就是把这些记录下来 @ A 127.0.0.1 www A 127.0.0.1 现在让我们假设一下,我想把所有的“www”流量转发到根目录。我会使用mod_rewrite和.htaccess将301重定向从根级别的域放入到“www”变体中,如下所示: RewriteEngine On RewriteCond %{HTTP_HOST} !^(.*)\.example\

比如说,我有一个域名,人们希望将其作为根和“www”来阅读:

example.com
www.example.com
我能做的就是把这些记录下来

@ A 127.0.0.1
www A 127.0.0.1
现在让我们假设一下,我想把所有的“www”流量转发到根目录。我会使用mod_rewrite和.htaccess将301重定向从根级别的域放入到“www”变体中,如下所示:

RewriteEngine On 
RewriteCond %{HTTP_HOST} !^(.*)\.example\.com$ [NC] 
RewriteRule ^(.*)$ http://www.example.com/$1 [R=301,L]
RewriteEngine On 
RewriteCond %{HTTP_HOST} ^www.example.com$ [NC]
RewriteRule ^(.*)$ http://example.com/$1 [R=301,L]
www CNAME example.com
最后,假设我想将所有根流量转发到“www”。我会使用mod_rewrite和.htaccess将301重定向从“www”转到根级域-如下所示:

RewriteEngine On 
RewriteCond %{HTTP_HOST} !^(.*)\.example\.com$ [NC] 
RewriteRule ^(.*)$ http://www.example.com/$1 [R=301,L]
RewriteEngine On 
RewriteCond %{HTTP_HOST} ^www.example.com$ [NC]
RewriteRule ^(.*)$ http://example.com/$1 [R=301,L]
www CNAME example.com
我真正的问题是:我应该在这里的某个地方使用CNAMEs吗?从技术上讲,我可以用一个CNAME(我想)将“www”推到根上,如下所示:

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

这有效/可取吗?这里的最佳实践是什么?A Records+301或A Records+CNAMEs?

您可以在DNS中以任何一种方式执行此操作,效果相同。(当然,在您的示例中使用127.0.0.1有点荒谬。)

是的,IP和域以及bunk是故意的;)谢谢你的反馈,想知道这里的其他人是怎么想的。。。