新版Jenkins不配置反向代理,直接用ip加端口訪問會出現保存不了等錯誤。
新版增加了CSRF校驗,需要關閉nginx的忽略無效header。在nginx.conf 的http模塊添加或修改:
ignore_invalid_headers off;
在nginx的conf.d目錄新增 jenkins.conf
upstream jenkins { server 127.0.0.1:8090; } server { listen 80; server_name jenkins-dev.com; charset utf-8; client_body_buffer_size 10M; proxy_redirect off; proxy_set_header Host $host:$server_port; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-Host $host:$server_port; proxy_set_header X-Forwarded-Server $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_next_upstream error timeout invalid_header http_502 http_503 http_504; proxy_ignore_client_abort on; proxy_read_timeout 180; proxy_buffering on; proxy_buffer_size 8k; proxy_buffers 8 8M; gzip on; gzip_min_length 1000; gzip_types text/plain text/css application/json text/xml application/xml application/xml+rss text/javascript; location / { proxy_pass http://jenkins; proxy_redirect default; proxy_set_header Host $host:$server_port; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-Host $host:$server_port; proxy_set_header X-Forwarded-Server $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; } }
參考文檔:
1. Jenkins官方文檔,關於反向代理的說明,不配置或者反向代理配置錯誤都可能在管理頁面有錯誤信息展示
https://www.jenkins.io/doc/book/system-administration/reverse-proxy-configuration-troubleshooting/
2. 為Jenkins配置nginx作為反向代理。
https://blog.csdn.net/weixin_34133829/article/details/93173932
3. nginx自定義header配置
https://www.cnblogs.com/ajianbeyourself/p/4104449.html