Я хочу настроить сервер Nginx (общедоступный), который перенаправляет git-webhooks в Jenkins, работающий на Apache (частный).
Я настроил конфигурацию Nginx для прокси-передачи в Jenkins (работает на Apache).Все это хорошо работает с моего ПК, например, когда я нажимаю на URL Nginx (без заголовков), он правильно перенаправляется на Jenkins на Apache.
Но когда я включаю git webhooks, я вижу, что запрос достигает Nginx, но Nginx не пересылает запрос в Apache и завершается с ошибкой «301 Moved Permanently».GitHub фактически выполняет пост-вызов Nginx с некоторыми заголовками ниже:
Request method: POST
content-type: application/x-www-form-urlencoded
Expect:
User-Agent: GitHub-Hookshot/8f0ea18
X-GitHub-Delivery: 6a64cb70-e86d-11e8-849f-eec77e260f21
X-GitHub-Event: ping
Вот мой конфиг Nginx:
server {
listen 443 ssl http2;
listen [::]:443 ssl http2;
server_name jenkins-nginx.pcloud.com
56.69.56.194;
ssl_certificate "/etc/nginx/server.crt";
ssl_certificate_key "/etc/nginx/server_nopass.key";
ssl_session_cache shared:SSL:1m;
ssl_session_timeout 10m;
ssl_ciphers HIGH:!aNULL:!MD5;
ssl_prefer_server_ciphers on;
location / {
proxy_pass http://jenkins.pcloud.com;
}
error_page 404 /404.html;
location = /40x.html {
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
}
}