Nginx域名重定向

比如如下这个配置

[root@host-192-168-0-2 vhost]# vim test.conf server{
listen 80;
server_name jenkins.centoscn.cn gitlab.centoscn.cn;
index index.html index.htm index.php;
root /data/wwwroot/jenkins.centoscn.cm;if ($host != 'jenkins.centoscn.cn' ) {
rewrite ^/(.*)$ http://jenkins.centoscn.cn/$1 permanent;
}location /admin/
{
auth_basic "Auth";
auth_basic_user_file /usr/local/nginx/conf/htpasswd;}}

有jenkins.centoscn.cn和gitlab.centoscn.cn两个域名或者后面跟多个,我们访问gitlab.centoscn.cn域名时自动跳转到Jenkins.centoscn.cn

重新加载一下

[root@host-192-168-0-2 vhost]# /usr/local/nginx/sbin/nginx -t
nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful[root@host-192-168-0-2 vhost]# /usr/local/nginx/sbin/nginx -s reload

curl页面测试

[root@host-192-168-0-2 vhost]# curl -x127.0.0.1:80 gitlab.centoscn.cn/index.html -I
HTTP/1.1 301 Moved Permanently
Server: nginx/1.12.1
Date: Fri, 22 Dec 2017 07:50:50 GMT
Content-Type: text/htmlContent-Length: 185
Connection: keep-alive
Location: http://jenkins.centoscn.cn/index.html

web测试

浏览区输入如下域名会自动跳转到jenkins.centoscn.cn上面

http://gitlab.centoscn.cn

Nginx域名重定向

### 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]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Mr-GuiLin

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值