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

JetBrains Projector镜像Nginx反向代理相对路径配置咨询

解决Projector镜像在Nginx反向代理下的相对路径问题

1. 配置Projector容器的上下文路径

运行Projector镜像时,通过PROJECTOR_SERVER_CONTEXT_PATH环境变量指定你的完整相对路径前缀,所有资源请求会自动带上这个路径,而非根路径。以Docker启动为例:

docker run -d \
  -e PROJECTOR_SERVER_CONTEXT_PATH="/projector/aosidjfa-se3f-489r-3849wef" \
  -p 8888:8888 \
  jetbrains/projector-idea:latest

(DataGrip镜像替换为jetbrains/projector-datagrip:latest即可)

2. 配置Nginx反向代理

在Nginx配置文件中添加对应反向代理规则,同时处理Projector依赖的WebSocket连接:

server {
    listen 443 ssl;
    server_name myserver.com;

    ssl_certificate /path/to/your/cert.pem;
    ssl_certificate_key /path/to/your/key.pem;

    location /projector/aosidjfa-se3f-489r-3849wef {
        proxy_pass http://localhost:8888;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
        
        # 必须配置WebSocket相关头,保证界面交互正常
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
    }
}

3. 动态路径场景的适配

如果路径中的随机串(aosidjfa-se3f-489r-3849wef)是动态生成的,无法提前写死环境变量,可以通过脚本动态启动Projector容器:

  1. 先生成随机串,比如用uuidgen命令
  2. 将生成的串拼接成上下文路径,作为环境变量传入容器
  3. 同步更新Nginx配置(或用正则匹配/projector/[a-z0-9-]+的路径,再通过proxy_set_header传递前缀)

验证方法

重启Nginx和Projector容器后,访问目标URL,打开浏览器开发者工具的「网络」面板,确认所有JS、CSS、WebSocket请求的路径都带有/projector/aosidjfa-se3f-489r-3849wef前缀,而非根路径。

内容的提问来源于stack exchange,提问作者degr

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.16 19:05:32