我的知识记录

Apache htaccess设置www域名跳转_配置代码直接复制_虚拟主机可用方案

网站同时支持带www和不带www的域名访问,会导致搜索引擎认为是两个不同的网站,分散权重和收录,影响SEO排名。正确的做法是将其中一个域名301重定向到另一个,统一访问域名。大多数网站选择将不带www的根域名跳转到带www的子域名,也有部分网站选择相反方向。本文讲解如何配置无WWW到带WWW的自动跳转,以及相关的注意事项。

IIS环境下配置www跳转,需要安装URL Rewrite模块,然后在web.config中配置规则。规则结构:。这条规则匹配所有URL,当HTTP_HOST不以www.开头时,301永久重定向到带www的域名。IIS的URL Rewrite模块需要单独安装,大部分Windows虚拟主机已经预装。

Apache环境下配置www跳转,在.htaccess文件中添加规则。写法:RewriteEngine On,RewriteCond %{HTTP_HOST} !^www. [NC],RewriteRule ^(.*)$ https://www.%{HTTP_HOST}/$1 [R=301,L]。这条规则开启重写引擎,判断HTTP_HOST是否不以www.开头(不区分大小写),如果条件满足则301重定向到带www的域名,保留请求路径。注意需要确保httpd.conf中开启了mod_rewrite模块,且对应目录的AllowOverride设置为All,否则.htaccess规则不生效。

宝塔面板环境下配置www跳转更简单。进入宝塔面板-网站-设置-伪静态,在下拉菜单中选择对应的程序规则,或者直接在伪静态框中添加跳转规则。也可以在网站设置-重定向中配置域名重定向,选择重定向类型为301,填写源域名和目标域名。宝塔面板的可视化配置不需要手写规则,适合不熟悉代码的站长。配置后在面板中测试访问,确认跳转正常。注意如果开启了SSL,需要在HTTPS下也配置跳转,或者使用强制HTTPS功能。

配置完成后需要验证跳转是否正确。使用curl命令测试:curl -I http://你的域名,查看返回的状态码是否为301,Location头是否指向带www的域名。测试不带www的HTTP、不带www的HTTPS、带www的HTTP、带www的HTTPS四种情况,确认跳转逻辑正确。使用在线重定向检测工具,输入域名查看跳转链,确保没有循环跳转和多余跳转。循环跳转通常是因为规则冲突,比如同时配置了www跳转和HTTPS跳转,规则顺序错误导致互相跳转。

真实经历:配置www跳转后移动端访问出现证书错误,因为SSL证书只包含了带www的域名,不带www的域名跳转前就触发了证书错误。重新申请了包含两个域名的证书,问题解决。配置跳转前一定要确认SSL证书覆盖了所有需要跳转的域名。

SEO提示:配置301跳转后在搜索引擎站长平台设置首选域,提交带主域名的sitemap,内部链接统一使用主域名。权重转移需要时间,不要频繁更改跳转方向。避免使用302、meta refresh、JS跳转,这些方式不利于权重传递。

Apache htaccess设置www域名跳转_配置代码直接复制_虚拟主机可用方案

标签:

更新时间:2026-08-26 15:38:06

上一篇:帝国CMS会员手机验证绑定_手机验证_对接短信服务商发送验证码绑定

下一篇:pbootcms目录权限设置core禁止写入