使用.htaccess文件将整个网站重定向至新域名
旧域名全量URL重定向到新域名的解决方案
下面按不同服务器环境给出具体实现方案,均采用301永久重定向(对SEO友好,可传递原页面权重):
Apache 服务器(.htaccess 配置)
如果你的站点基于Apache运行,直接在旧域名根目录的.htaccess文件中添加以下规则:
RewriteEngine On # 匹配旧域名(不区分大小写) RewriteCond %{HTTP_HOST} ^www\.example\.com\.au$ [NC] # 将所有路径重定向到新域名对应路径 RewriteRule ^(.*)$ https://www.newdomain.com.au/$1 [R=301,L]
- 把
www.example.com.au替换为你的旧域名,www.newdomain.com.au替换为新域名 [NC]表示不区分域名大小写,[R=301]指定永久重定向,[L]表示停止执行后续规则
Nginx 服务器
在Nginx配置文件中,为旧域名单独添加server块:
server { listen 80; listen 443 ssl; server_name www.example.com.au; # 若旧域名有SSL证书,保留对应配置 # ssl_certificate /path/to/old-domain-cert.pem; # ssl_certificate_key /path/to/old-domain-key.pem; # $request_uri会自动保留原URL的路径和参数 return 301 https://www.newdomain.com.au$request_uri; }
配置完成后重启Nginx生效。
IIS 服务器
在旧域名站点的web.config文件中添加重写规则:
<configuration> <system.webServer> <rewrite> <rules> <rule name="Domain Redirect" stopProcessing="true"> <match url="(.*)" /> <conditions> <add input="{HTTP_HOST}" pattern="^www\.example\.com\.au$" /> </conditions> <action type="Redirect" url="https://www.newdomain.com.au/{R:1}" redirectType="Permanent" /> </rule> </rules> </rewrite> </system.webServer> </configuration>
redirectType="Permanent"对应301永久重定向,{R:1}会捕获原URL的路径部分
额外注意事项
- 测试重定向:可用命令行验证,比如执行
curl -I https://www.example.com.au/blog,查看返回的Location响应头是否指向正确的新地址 - 确保新域名HTTPS配置正常,若旧域名使用HTTPS,新域名需配置对应SSL证书,避免浏览器安全提示
- 托管平台(如WordPress、Shopify):可直接在后台域名设置中找到重定向选项,或安装对应插件/应用实现,无需手动修改配置文件
内容的提问来源于stack exchange,提问作者Kunal Verma
相关产品推荐
相关产品推荐

