如何将非www站点重定向到www站点?
Posted
技术标签:
【中文标题】如何将非www站点重定向到www站点?【英文标题】:How to redirect non-www site to www site? 【发布时间】:2012-04-18 04:16:49 【问题描述】:我创建了一个 wordpress 网站。 当我写没有 www 的域名时,它会正确打开 但当我写 www。在 url 中它没有显示网站。
请帮帮我.. 提前谢谢你。
我已经编辑了我的问题并添加了以下部分:
以下是我的文件: 我必须把你提供的代码放在哪里? 我在“开始 Wordpress”行之前尝试过,但仍然无法正常工作。
.htaccess
"#-FrontPage-"
IndexIgnore .htaccess /.?? *~ *# /HEADER */README* */_vti*
订单拒绝,允许
拒绝所有
全部允许
订单拒绝,允许
拒绝所有
AuthName example.com
AuthUserFile /home/example/public_html/_vti_pvt/service.pwd
AuthGroupFile /home/example/public_html/_vti_pvt/service.grp
“#开始 WordPress”
重写引擎开启
重写基础/
重写规则 ^index.php$ - [L]
RewriteCond %REQUEST_FILENAME !-f
RewriteCond %REQUEST_FILENAME !-d
重写规则。 /index.php [L]
"#结束 WordPress"
【问题讨论】:
WordPress 会自动执行此操作,我会仔细检查您的 DNS 并查看您是否有 www 的 cname。 【参考方案1】:您需要使用 www 添加 DNS A 记录
【讨论】:
【参考方案2】:尝试按照以下步骤操作:
1) 为 www 添加 CNAME 记录并将值/指向设置为 @。或者你可以反之亦然 2) 在 Wordpress 下,在主页和站点 URL 下使用 www 设置您的域。例如www.example.com 3)在.htaccess中添加重定向代码
RewriteEngine On
RewriteCond %HTTP_HOST !^www\.
RewriteRule ^(.*)$ http://www.%HTTP_HOST/$1 [R=301,L]
在 Wordpress 中,#3 是可选的。如果您按照 #2 进行设置,Wordpress 将自动使用 www 打开网站。
【讨论】:
【参考方案3】:在您的 .htaccess 文件中编写以下代码
RewriteCond %HTTP_HOST ^example.com$
RewriteRule (.*) http://www.example.com/$1 [R=301,L]
【讨论】:
【参考方案4】:将其写入您的 .htaccess 文件中:
RewriteEngine On
RewriteCond %HTTP_HOST ^www.domain.com$ [NC]
RewriteRule ^(.*)$ http://domain.com/$1 [R=301,L]
【讨论】:
感谢您的帮助,但无法正常工作。请查看已编辑的问题并再次帮助我。 César:该请求永远不会到达 .htaccess 文件,因为尚未在 DNS 中配置 www 子域(“但是当我在 url 中写入 www. 时,它没有显示该站点。” )。【参考方案5】:当您的 DNS 配置不足时会发生这种情况。 您的网站已经有一条 A 记录(“example.com”指向某个 IP)。
但您还需要通过添加 CNAME 记录来使 www-part 工作。 CNAME 可以通过两种基本方式进行配置:
*.example.com - 处理所有流量,例如“www.example.com”或“foo.example.com”。 www.example.com - 仅处理与 www.example.com 子域。所以你有:
记录
Host: example.com
IP: 5.5.5.5
CNAME
Host: *.example.com (or www.example.com)
如果要配置邮件域,还记得添加 MX 记录。
【讨论】:
以上是关于如何将非www站点重定向到www站点?的主要内容,如果未能解决你的问题,请参考以下文章
如何使用undertow将非www URL重定向到jboss中的www URL