需求分解
这个需求是作为个人网站的服务器一般都只有一台,所以会涉及到部署了很多不同端口的应用,但域名解析只能解析到80端口,这就需要用到我们的nginx来做反向代理了。
在计算机网络中,反向代理是代理服务器的一种。服务器根据客户端的请求,从其关系的一组或多组后端服务器上获取资源,然后再将这些资源返回给客户端,客户端只会得知反向代理的IP地址,而不知道在代理服务器后面的服务器集群的存在。
配置二级域名解析
首先我们需要创建一个二级域名通过A类型解析到服务器公网IP地址,此处使用的示例域名为dhwlinks.top
,二级域名为:zabbix.dhwlinks.top
配置 Nginx
假设现在有一条server
段是解析到主应用的:
server {
listen 80;
server_name www.dhwlinks.top;
location / {
proxy_pass http://127.0.0.1:80;
}
}
即可再添加一条server
指向你的另一个应用:
server {
listen 80;
server_name zabbix.dhwlinks.top;
location / {
proxy_pass http://127.0.0.1:8080;
}
}
要实现目录解析到不同端口,就在location处设置:
server {
listen 80;
server_name zabbix.dhwlinks.top;
location /edu/ {
proxy_pass http://127.0.0.1:8081;
}
}
到此反向代理就已经配置完成了,还需要reload一下nginx的配置文件即可使用二级域名访问
进入nginx可执行目录sbin下,输入命令./nginx -s reload