你好。
我正在尝试在一台仅拥有内网 IP 地址的虚拟机上启动一个 Discourse 实例,该实例只能通过另一台虚拟机上的 Nginx 代理访问。因此,代理包含以下配置:
upstream forums {
server 10.240.10.19:443;
server 10.240.10.19:80;
}
server {
listen 443 ssl;
server_name SECRET;
access_log /var/log/nginx/SECRET_access.log;
error_log /var/log/nginx/SECRET_error.log;
location / {
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Real-IP $remote_addr;
add_header X-Host $host;
expires 0m;
proxy_pass http://forums;
}
ssl_certificate /etc/letsencrypt/live/SECRET/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/SECRET/privkey.pem;
include /etc/letsencrypt/options-ssl-nginx.conf;
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem;
}
尝试使用 discourse-setup 时,我遇到了以下错误:
WARNING: Port 443 of computer does not appear to be accessible using hostname: SECRET
WARNING: Connection to http://SECRET (port 80) also fails.
起初,仅编辑 containers/app.yml 中的内容就能正常工作,实例也可访问。但是,尝试使用内置的 Let’s Encrypt 功能获取 SSL 证书时失败了。所以我猜这里有什么问题,希望你们中有人知道是怎么回事。
谢谢,
felixoi