1. 在同一个 server 块中监听多个端口
server {
listen 80;
listen 8080;
server_name example.com;
# 其他配置...
}
- 在这个配置中,Nginx 会同时监听
80
和8080
端口,处理来自这两个端口的请求。
2. 为不同端口创建不同的 server 块
server {
listen 80;
server_name example.com;
location / {
root /usr/share/nginx/html;
index index.html;
}
}
server {
listen 8080;
server_name example.com;
location / {
proxy_pass http://backend.example.com;
}
}
server {
listen 443 ssl;
server_name example.com;
# HTTPS 配置...
}
-
80
端口的请求会被处理为静态文件服务。 -
8080
端口的请求会被转发到后端服务器http://backend.example.com
。
应用场景
-
提供不同的服务
- 前端项目只能部署到根目录:nginx可以代理不同项目。
-
环境区分
- 开发环境:8080
- 测试环境:8081
- 预生产环境:8082
- 生产环境:80
-
SSL/TLS 配置
-
可以为不同的端口配置不同的 SSL/TLS 证书,以支持不同的安全需求。例如:
-
HTTP 服务 :监听
80
端口,提供非加密服务。 -
HTTPS 服务 :监听
443
端口,提供加密服务。
-
-