项目server使用的IP与服务器IP不一样,NGINX需要如何配置
时间: 2024-09-21 18:07:59 浏览: 29
Nginx服务器中使用gzip压缩的相关配置解析
如果你的项目服务器使用的IP与你的服务器(通常指运行NGINX的服务)的IP不同,你需要在NGINX配置文件中指定正确的主机名或IP来匹配项目的请求。这里假设项目服务器的IP为`192.168.1.100`而NGINX所在服务器的IP为`公网IP`。
1. 添加虚拟主机(Virtual Host)配置:
在NGINX的`conf.d`目录(或者`sites-available`)下创建一个新的配置文件,例如`project_server.conf`。添加如下内容:
```nginx
upstream backend {
server 192.168.1.100:80 weight=1 max_fails=3 fail_timeout=10s;
}
server {
listen [公网IP]:80; # 公网IP地址,替换为实际的公网IP
server_name project.example.com; # 更改为你项目服务器的域名
location / {
proxy_pass http://backend;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
```
上述配置定义了一个名为`backend`的上游服务器,然后在server块中设置监听公网IP,使用`proxy_pass`指令将请求转发给项目服务器。
2. 启用并测试配置:
- 将新配置文件链接到`sites-enabled`目录,如`ln -s sites-available/project_server.conf sites-enabled/`
- 重启NGINX服务:`sudo service nginx restart` 或 `sudo systemctl restart nginx`
现在,外部用户通过`project.example.com`可以访问到位于`192.168.1.100`的项目服务器的内容。
阅读全文