【发布时间】:2017-07-17 02:19:15
【问题描述】:
我在 Nginx 反向代理后面的 Docker 中运行 Jenkins。现在我遇到了解析器的问题。
当我激活解析器时:
set $backend "http://jenkins:8080/";
proxy_pass $backend;
所有的 javascript 文件都会出现以下错误:
Refused to execute script from 'http://localhost/static/....js' because its MIME type ('text/html') is not executable, and strict MIME type checking is enabled.
当我只是在没有解析器的情况下代理传递:
proxy_pass http://jenkins:8080/;
它可以工作,但没有解析器。解析器是强制性的,否则当主机 jenkins 更改其 Ip(Docker DNS 服务器)时,设置将无法正常工作。
我的配置:
resolver 127.0.0.11 ipv6=off valid=30s;
client_max_body_size 100m;
keepalive_timeout 65;
types_hash_max_size 2048;
server {
listen 80 default_server;
listen [::]:80 default_server;
server_name _;
location / {
set $backend "http://jenkins:8080/";
proxy_pass $backend;
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;
}
}
【问题讨论】:
-
好问题! :-)
-
感谢您的支持、接受、奖励;顺便说一句,对于未来,您可能希望继续使用手动“奖励”部分,因为问题从特色选项卡中消失了,因此其他人将无法记录和投票。
标签: nginx jenkins docker proxy