You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

同一Nginx代理下配置子路径/php访问PHP服务的问题求助

同一Nginx代理下配置子路径/php访问PHP服务的问题求助

各位大佬好,我最近在Nginx配置上碰到了个棘手的问题,想请大家帮忙支支招!

目前的情况是这样的:我有个域名example.com,已经用Nginx反向代理了Tomcat服务,访问http://www.example.com/会正常跳转到Tomcat,这部分运行完全没问题。

现在我想在同一台服务器上,用同一个Nginx再代理一个PHP服务,希望通过http://www.example.com/php这个路径,访问服务器上/data/wwwroot/php目录下的PHP代码。

但实际测试的时候,访问这个路径居然还是被转发到Tomcat了,直接返回Tomcat的HTTP status 404 - Not Found错误页面,明显Nginx的PHP代理规则没生效。我试过把PHP服务改成子域名php.example.com来代理,倒是成功了,但这样会引发跨域问题,所以还是想坚持用子路径的方式来配置。

下面是我目前代理Tomcat的Nginx核心配置:

server {
    listen 80;
    server_name www.example.com;

    # 原有的Tomcat代理规则
    location / {
        proxy_pass http://localhost:8080;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }
}

想请教下各位,我该怎么修改Nginx配置,才能让访问/php路径的时候,正确转发到PHP服务,而不是走Tomcat的代理呢?

备注:内容来源于stack exchange,提问作者庞发恒

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.17 08:30:31