所谓URL转发,是经过服务器的特殊设置,将访问您当前域名的用户引导到您指定的另外一个网络地址。 地址转向(也可称“URL转发”)即将一个域名指向到另一个已存在的站点html
定义虚拟主机配置文件
例如:blog.jinkai.cc.conf虚拟主机
cd /etc/nginx/conf.d/
vim blog.jinkai.cc.conf
server_name //后面以空格为分隔,从新加入一个域名www.jinkai.comnginx
server_name blog.jinkai.cc www.jinkai.com;vim
检查语法和重载缓存
nginx -t && nginx -s reload服务器
定义Windows系统C盘---system32--drivers--etc--hosts
增长一行 192.168.111.136 www.jinkai.com
如今就能够实现多个域名访问一个站点。www.jinkai.com 和blog.jinkai.cc访问的是同一个网站
但没法实现域名跳转,要想实现域名跳转还须要在blog.jinkai.cc.conf加入一行
server_name 下面定义:主机访问blog.jinkai.cc则永久跳转到www.jinkai.com permanent 永久跳转 网络
if ($host = blog.jinkai.cc )
{
rewrite /(.*) http://www.jinkai.com/$1 permanent;
}curl
检查语法和重载:
nginx -t && nginx -s reloadide
测试
Windows网页访问blog.jinkai.cc会自动跳转到www.jinkai.com
Linux上能够用curl测试
[root@jinkai conf.d]# curl -x127.0.0.1:80 -I blog.jinkai.cc
HTTP/1.1 301 Moved Permanently
Server: nginx/1.18.0
Date: Wed, 09 Sep 2020 13:12:44 GMT
Content-Type: text/html
Content-Length: 169
Connection: keep-alive
Location: http://www.jinkai.com/测试
状态码:200(OK) 404(不存在) 304(缓存) 301(永久重定向) 302 (临时重定向)网站
若是涉及域名跳转能够使用301永久重定向,若是不涉及域名跳转,能够设置为302临时跳转,例如:
vim blog.jinkai.cc.conf
加入一行:rewrite /1.txt /2.txt redirect;
实现文件跳转1.txt 跳转到2.txt
[root@jinkai conf.d]# curl -x127.0.0.1:80 -I www.jinkai.com/1.txt
HTTP/1.1 302 Moved Temporarily
Server: nginx/1.18.0
Date: Wed, 09 Sep 2020 13:20:29 GMT
Content-Type: text/html
Content-Length: 145
Location: http://www.jinkai.com/2.txtConnection: keep-alive