nginx配置域名重定向
时间: 2025-05-02 16:32:30 浏览: 51
### Nginx 中配置域名重定向
为了实现老网站域名向新网站的重定向,在Nginx中可以通过修改配置文件来完成此操作。对于大多数Linux发行版,默认情况下,Nginx的主要配置文件位于 `/etc/nginx/nginx.conf` 或者是在 `/etc/nginx/sites-available/` 和 `/etc/nginx/sites-enabled/` 目录下的站点特定配置文件[^1]。
当需要将 `http://example.old.com` 重定向至 `https://www.newsite.com` 时,可以在HTTP上下文中定义一个新的server块:
```nginx
server {
listen 80;
server_name example.old.com;
# 执行永久重定向到新的URL地址
return 301 https://www.newsite.com$request_uri;
}
```
上述配置会监听来自端口80(即未加密的HTTP请求),并将所有针对 `example.old.com` 的访问请求通过状态码301 (Moved Permanently) 永久性地转向指定的新网址,并保留原始URI路径[^2]。
另外一种情况是希望除了某个特定子域外的所有其他子域都指向同一个目标位置,则可以采用如下策略:
```nginx
server {
listen 443 ssl;
server_name old.domain.com new.domain.com example.com www.example.com;
if ($host != 'www.new.domain.com') {
return 301 https://www.new.domain.com$request_uri;
}
# SSL证书和其他设置...
}
```
这段代码片段展示了如何处理多个源主机名称并仅在它们不匹配预期的目标子域时执行重定向逻辑[^4]。
值得注意的是,在某些场景下可能还需要考虑HTTPS协议的支持以及SSL/TLS证书的相关配置;此外,确保每次更改Nginx配置之后都要测试其语法正确性和功能正常工作,这可通过命令行工具如 `nginx -t` 来验证配置的有效性[^3]。
阅读全文
相关推荐


















