【问题标题】:nginx reverse proxy images and css are not loadednginx反向代理图片和css没有加载
【发布时间】:2014-10-01 00:11:15
【问题描述】:

我尝试配置一个 nginx 反向代理来访问 Jenkins 实例。我可以打开身份验证页面,但没有 CSS 和图像。直接访问时效果很好。

就像反向代理没有正确重写在 html 源页面中定义的 URL 一样。我错过了什么吗?

这是我的 nginx 配置:

    location /jenkins {
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header Host $http_host;
            proxy_redirect false;
            proxy_pass http://jenkins:8080/;
    }

【问题讨论】:

    标签: nginx proxy reverse-proxy


    【解决方案1】:

    我找到了解决方案。 nginx 反向代理运行良好,但 Jenkins 需要进行一些自定义才能使用反向代理。

    最后的nginx配置:

        location /jenkins/ {
        proxy_pass http://jenkins:8080/jenkins/;
                proxy_set_header Host $host;
                proxy_set_header X-Real-IP $remote_addr;
                proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        }
    

    the tutorial 在 nginx 反向代理后面配置 jenkins 解决了我的问题

    【讨论】:

    【解决方案2】:

    我不知道上述语句是否适用于 OP,但我知道更改位置名称行对我有用:

      location ^~ /jenkins/ {
        proxy_pass http://jenkins:8080/jenkins/;
                proxy_set_header Host $host;
                proxy_set_header X-Real-IP $remote_addr;
                proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        }
    

    【讨论】:

      【解决方案3】:

      如果您将 Jenkins 与 docker 一起使用。您可以添加 compose 文件的环境部分,如下所示:

      environment:
       JENKINS_OPTS: "--prefix=/jenkins"
      

      在 nginx 配置文件中。 proxy_pass 必须引用http://IP-ADDRESS:PORT/jenkins/。如前所述,link 作为参考非常有用。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2018-04-25
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-02-09
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多