1. 需求
本地需要通过不同的url访问不同的端口服务,例如
- 通过
http://192.168.10.25访问我的8090端口的网页 - 通过
http://192.168.10.25/server访问我的9999端口的后台服务 - 通过
http://192.168.10.25/img访问我的9000端口的图片服务
等等
2. 配置
// 在conf.d目录下新增一个反向代理的配置文件
$ nano /etc/nginx/conf.d/blog.conf
# 配置如下
server {
listen 80;
server_name localhost;
location / {
proxy_pass http://localhost:8090;
}
location ^~ /server {
proxy_pass http://localhost:9999/;
proxy_set_header X-Real-IP $remote_addr;
}
}
遇到的问题:
Q: conf.d目录下的配置文件会生效吗?
A: 会。/etc/nginx/nginx.conf中配置了自动扫描该目录的配置。
Q: 配置未生效,一直显示的是其他网页
A: 情况一: 显示的是nginx欢迎页面:请编辑/etc/nginx/nginx.conf配置,将include /etc/nginx/sites-enabled/*;这行代码注释掉。
情况二: 显示的是其他页面: 查看80端口的占用情况,关闭占用端口的服务,并重启nginx服务。

本文介绍了如何使用nginx实现反向代理,将不同url映射到同一服务器上的多个端口,如8090端口的网页、9999端口的后台服务和9000端口的图片服务。配置过程中,可能会遇到conf.d目录配置文件生效问题及配置未生效导致的页面显示错误,解决方法包括注释默认欢迎页面配置和检查80端口占用情况。
7657

被折叠的 条评论
为什么被折叠?



