文章摘要:域名我们平常可以使用端口号来区分不同的服务,但是我们访问网站的时候几乎没见过使用域名加端口号的情况,使用域名的主要原因就是域名比IP地址好记,加上端口号变影响了域名的作用,那么我们有没有办法不添加端口号···
我们平常可以使用端口号来区分不同的服务,但是我们访问网站的时候几乎没见过使用域名加端口号的情况,使用域名的主要原因就是域名比IP地址好记,加上端口号变影响了域名的作用,那么我们有没有办法不添加端口号,还能区分这些服务呢?可以使用二级域名,例如百度搜索的域名是,而百度百科的域名是。今天就带大家用nginx配置二级域名。
不使用二级域名之前
server { listen 80; server_name _/; root /usr/share/nginx/html/wangscaler; # Load configuration files for the default server block. include /etc/nginx/default.d/*.conf; rewrite ^(.*)$ https://$host$1; location / { try_files $uri $uri/ /index.html; #proxy_pass http://WebApi; } location /wangscaler{ proxy_pass http://WebApi; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } }
除了访问不方便,就是资源消耗。每个服务都需要多占用一个端口。而且开启的服务多的话,端口号也得管理起来,要不然时间久了就不知道端口号有没有被使用,被使用了用在什么地方。
使用二级域名
server { listen 80; server_name test.dilicili.cn; include /etc/nginx/default.d/*.conf; root /usr/share/nginx/html/test; gzip_static on; rewrite ^(.*)$ https://$host$1; location /{ try_files $uri $uri/ /index.html; } } server { listen 80; server_name test1.dilicili.cn; root /usr/share/nginx/html/test1; # Load configuration files for the default server block. include /etc/nginx/default.d/*.conf; rewrite ^(.*)$ https://$host$1; location / { try_files $uri $uri/ /index.html; } location /love{ proxy_pass http://WebApi; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } }
统一使用80端口,只需要分别配置即可。给不同的服务指定不同的二级域名即可,就这么简单。值得注意的是:我这里使用了ssl证书,如果你没有可以注释掉 ^(.*)$ $host$1;这个目的就是通过http访问的用户,重定向到https上去,当然如果你配置了ssl证书,你需要配置的端口号是443而不是80。
重定向
因为我之前博客的地址是现在使用完二级域名之后变成了,原来的地址应用于别的地方可能无法直接访问了,例如我的地址应用在该博客主题的推荐优秀博客案例中。为了不造成影响可以直接重定向到现在的地址。在之前这个下修改。
location /blog { rewrite ^(.*)$ https://blog.dilicili.cn; }
如果你没这种情况,请忽略。
开启域名解析
我在购买的域名,所以以为例。
点击解析,比如我需要访问的二级域名是
记录值输入你的IP地址即可。也可以在主机记录输入通配符*,这样你所有的二级域名都会开启解析。
注意点最后
使用二级域名之后,访问也方便快捷了,最重要的是节省了大量的端口号。
与本文相关的文章连读。
来都来了,点个赞再走呗!
关注,祝你升职、加薪、不提桶!