我创建了一个Ubuntu 19.10
VirtualBox VM,并安装了OpenJDK 8
,Nginx 1.16.1
和Jenkins 2.222.1
。我可以通过HTTP IP地址访问,例如http://{IP_OF_THE_VM}:8080
。现在,我还希望能够通过https://jenkins.ciserver.loc/
之类的主机名来访问它。
这是VHost文件/etc/nginx/sites-available/jenkins.ciserver.loc
:
upstream jenkins {
server 127.0.0.1:8080;
}
server {
listen 80;
server_name jenkins.ciserver.loc;
access_log /var/log/nginx/jenkins.access.log;
error_log /var/log/nginx/jenkins.error.log;
proxy_buffers 16 64k;
proxy_buffer_size 128k;
location / {
proxy_pass http://jenkins;
proxy_next_upstream error timeout invalid_header http_500 http_502 http_503 http_504;
proxy_redirect off;
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 https;
}
}
当我在浏览器中请求http://ci.ciserver.loc
时,“ 无法访问此站点”,请求最终以ERR_SOCKET_NOT_CONNECTED
结束。
如何正确配置Jenkins和/或Nginx,以使Jenkins可以通过主机名访问?
已解决
这是一个愚蠢的错字...我将server_name
设置为jenkins.ciserver.loc
,但是一直都在尝试请求ci.ciserver.loc
。现在,我将请求的URL更正为http://jenkins.ciserver.loc
,它开始起作用。