在 Nginx 中,反向代理的配置通常写在 Nginx 配置文件的 server 块中。具体步骤如下:
1. 找到 Nginx 配置文件
通常,Nginx 的主配置文件位于以下路径之一:
/etc/nginx/nginx.conf
/etc/nginx/sites-available/default
(在一些基于 Debian 的系统上,如 Ubuntu)/etc/nginx/conf.d/xxx.conf
如果你在 CentOS 上,通常使用的是 /etc/nginx/nginx.conf
。
2. 编辑配置文件
打开你的配置文件(例如 /etc/nginx/nginx.conf
或 /etc/nginx/sites-available/default
或 /etc/nginx/conf.d/xxx.conf
),在server` 块中添加反向代理的配置。以下是一个基本的示例:
server {
listen 80; # 监听端口,默认为 80(HTTP)
server_name your-domain.com; # 你的域名或 IP 地址
location / {
proxy_pass http://localhost:8080; # 将请求转发到另一个本地服务器或应用
proxy_set_header Host $host; # 保持原始请求中的 Host 头部
proxy_set_header X-Real-IP $remote_addr; # 获取客户端的真实 IP 地址
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; # 获取经过代理的客户端 IP 地址链
proxy_set_header X-Forwarded-Proto $scheme; # 保留请求的协议(http 或 https)
}
}
3. 解释配置项:
- listen 80;:指定 Nginx 监听 HTTP 请求的端口。通常使用 80 端口,但可以根据需要更改。
- server_name your-domain.com;:设置你的域名或服务器的 IP 地址。例如,可以是
www.example.com
,或者你可以使用localhost
或127.0.0.1
来指向本机。 - location /:这是一个用于匹配 URL 路径的块。在此块中,
/
表示所有请求都匹配该配置,通常用于处理所有传入的请求。 - proxy_pass http://localhost:8080;:反向代理的核心部分。所有到达 Nginx 的请求将会被转发到
http://localhost:8080