nginx 反向代理配置 solo,并实现 https 访问

本贴最后更新于 2021 天前,其中的信息可能已经事过境迁

1.前置条件

使用官方默认配置安装 solo 后,默认占用了 80 端口,总感觉这样不是特别好,而且没有灵魂。

基本思路

  • 运行时可指定端口,默认 solo 绑定 8080 端口
  • 使用 nginx 将 80 反向代理到 8080 端口

solo 启动时参数 --listen_port=8080

修改 nginx 配置

location / {
	# 换成你的域名
        proxy_pass http://www.jinjianh.com:8080;
    }

重启 nginx,删掉现在的 solo 容器,重新启动一个 solo 容器或者更新容器参数。

出现的问题

我们想要的功能就实现了,在浏览器上访问 www.jinjianh.com 即可正确访问博客。但是博客内所有的域名都指向的是 8080 端口,比如我们想查看“Docker 从零开始安装开源博客 solo”,应该访问的域名是 www.jinjianh.com/first.html,实际上访问的确是 www.jinjianh.com:8080/first.html

解决办法

启动 solo 时,添加参数 --server_port= 值留空,或者设置为 80(80 好像不行,猜测是因为 nginx 占用了 80 端口),重新启动一个 solo 容器,或者更新参数。

最后

至此,就可以直接通过访问 80 端口的域名,去访问 8080 端口所在的域名。

如果你用 nginx 配置了 https,可以通过修改参数 --server_scheme=https 即可,如何配置 https 可查看我的另外一篇博客 http 升级为 https 

  • Solo

    Solo 是一款小而美的开源博客系统,专为程序员设计。Solo 有着非常活跃的社区,可将文章作为帖子推送到社区,来自社区的回帖将作为博客评论进行联动(具体细节请浏览 B3log 构思 - 分布式社区网络)。

    这是一种全新的网络社区体验,让热爱记录和分享的你不再感到孤单!

    1435 引用 • 10056 回帖 • 489 关注
  • Docker

    Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的操作系统上。容器完全使用沙箱机制,几乎没有性能开销,可以很容易地在机器和数据中心中运行。

    492 引用 • 926 回帖
  • NGINX

    NGINX 是一个高性能的 HTTP 和反向代理服务器,也是一个 IMAP/POP3/SMTP 代理服务器。 NGINX 是由 Igor Sysoev 为俄罗斯访问量第二的 Rambler.ru 站点开发的,第一个公开版本 0.1.0 发布于 2004 年 10 月 4 日。

    313 引用 • 547 回帖
  • 环境搭建
    8 引用 • 12 回帖

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...