多个公网IP地址到一个Nginx可以通过配置Nginx的虚拟主机来实现。具体步骤如下:
http
块,并在其中添加以下内容:http {
...
server {
listen 80;
server_name example.com;
location / {
proxy_pass http://localhost:8080;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
}
}
在上述配置中,listen
指定了Nginx监听的端口(这里是80),server_name
指定了访问该虚拟主机的域名(这里是example.com)。location
块中的配置将请求转发到本地的8080端口,你可以根据实际情况修改。
http {
...
server {
listen 80;
server_name ip1.example.com;
location / {
proxy_pass http://localhost:8080;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
}
server {
listen 80;
server_name ip2.example.com;
location / {
proxy_pass http://localhost:8080;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
}
...
}
在上述配置中,server_name
指定了访问该虚拟主机的域名(这里分别是ip1.example.com和ip2.example.com)。每个虚拟主机的配置与之前的主机配置相同。
sudo nginx -s reload
现在,多个公网IP地址就可以通过Nginx进行访问了。当访问不同的域名时,Nginx会根据配置将请求转发到相应的后端服务。
推荐的腾讯云相关产品:腾讯云负载均衡(https://cloud.tencent.com/product/clb)可以帮助实现多个公网IP地址到一个Nginx的负载均衡和高可用。
领取专属 10元无门槛券
手把手带您无忧上云