2026-10-22 14:22:33
在PHP一键环境(如宝塔面板)中配置Nginx反向代理,可通过以下步骤实现请求转发至本地或远程服务(如Node.js、Python后端等),同时支持API代理和WebSocket连接:
一、基础配置(宝塔面板自动生成)登录宝塔面板进入后台,找到需配置反向代理的域名站点,点击“网站”→选择对应域名→点击“设置”。
进入反向代理选项卡在站点配置页面切换至“反向代理”选项卡,点击“添加反向代理”。
填写目标URL
代理名称:自定义(如proxy-api)。
目标URL:输入要代理的服务地址(如
保持其他默认设置,点击“启用”。Nginx会自动生成proxy_pass规则到站点配置文件。
若需更精细控制(如修改请求头、支持WebSocket),可手动编辑配置文件:
进入配置文件编辑在站点设置中点击“配置文件”,找到location /块或新增规则。
示例配置(支持API和WebSocket)
location /api/ { proxy_pass关键参数:
proxy_pass:目标服务地址,末尾斜杠需与路径一致(如/api/对应
Upgrade和Connection:启用WebSocket连接。
服务状态检查
确保目标服务(如Node.js)已启动且端口开放(如3000、8080)。
通过命令netstat -tulnp | grep 端口号验证端口监听。
防火墙与安全组
开放对应端口(如3000)的入站规则。
宝塔面板中检查“安全”→“防火墙”是否放行。
路径斜杠一致性
proxy_pass末尾斜杠与location路径需匹配:
location /api/ → proxy_pass
location /api → proxy_pass
缓存与测试
清除浏览器缓存或使用隐身模式测试。
通过curl -v http://域名/api验证请求是否转发成功。
错误日志排查
查看Nginx错误日志:/www/wwwlogs/域名.error.log。
常见错误:
502 Bad Gateway:目标服务未启动或端口未开放。
404 Not Found:路径斜杠不一致或目标服务无对应路由。
通过宝塔面板可快速生成反向代理规则,手动编辑配置则支持高级功能(如WebSocket)。核心步骤: