|
在nginx.conf中,添加如下反向代理信息。
- server{
- listen 443 ssl;
- server_name sign.famend.cn;
- ssl_certificate /etc/nginx/ssl/sign.famend.cn/1_sign.famend.cn_bundle.crt;
- ssl_certificate_key /etc/nginx/ssl/sign.famend.cn/2_sign.famend.cn.key;
-
- location / {
- 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;
- proxy_pass http://sign.famend.cn:89/;
- }
- }
-
- server{
- listen 80;
- server_name famend.cn sign.famend.cn;
- location / {
- proxy_set_header HOST $host;
- proxy_set_header X-Real-IP $remote_addr:89;
- proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
- proxy_set_header X-Forwarded-Proto $scheme;
- proxy_pass http://sign.famend.cn:89/;
- }
- }
对于443端口,需要使用ssl_certificate和ssl_certificate_key。在ServiceDocker中证书使用的LetsEncrypt的SSL证书,每90天更新一次。
SSL证书的来源:一种方法,可以让它们共享LetsEncrypt的SSL证书。除此之外,在腾讯注册的域名,腾讯免费提供SSL证书,有效期为1年。
为了简便,我直接使用了腾讯的SSL证书,当然,一年之内,必须在过期之前更新证书。
③ 停止mynginx,然后重启它。
- docker container run
- --name mynginx
- --volume "$PWD/conf":/etc/nginx
- -p 80:80
- -p 443:443
- -d
- nginx
这次,去掉 --rm 参数,以便停止运行的时候保留容器。
至此,配置完成。
验证
浏览器中分别打开
- sign.famend.cn:80
- sign.famend.cn:89
- sign.famend.cn:449
- sign.famend.cn:443
都能正常访问。当然,打开449和443时候,可以发现两个URL使用的证书不一样。449是LetsEncrypt提供的,有效期90天;443来自腾讯(颁发机构TrustAsia),有效期1年。
当然,ServiceDocker中的另外一个网站famend.cn,也可以访问:
- famend.cn:80
- famend.cn:89
成功。 【编辑推荐】 - 域名知识篇:域名DNS根域名服务器背后的故事
- 全球免费公共 DNS 解析服务器 IP 地址列表推荐 (解决无法上网/加速/防劫持)
- 服务器CPU将在明年掀起多核PK:AMD 64核对决Intel 56核
- 从IPv4到IPv6,中国根服务器到底谁说了算
- MySQL全球服务器排名及常见优化方法
【责任编辑:武晓燕 TEL:(010)68476606】
点赞 0 (编辑:PHP编程网 - 钦州站长网)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|