Solo 博客安装问题

本贴最后更新于 1740 天前,其中的信息可能已经时移世易

错误

1.png

尝试的解决方案

检查了 docker 里的服务, 状态正常
3.png

随即去检查了域名, 请问是否是没有备案的原因呢
2.png

  • Solo

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

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

    1425 引用 • 10043 回帖 • 470 关注
  • 安装

    你若安好,便是晴天。

    128 引用 • 1184 回帖
  • Q&A

    提问之前请先看《提问的智慧》,好的问题比好的答案更有价值。

    6592 引用 • 29591 回帖 • 251 关注
1 操作
LilNn99 在 2019-07-29 13:01:22 更新了该帖

相关帖子

优质回帖
  • csfwff 2

    trollface 已经被备案拦截了

  • csfwff 1 1 赞同

    服务器安全组看看端口有没有开……
    防火墙什么的检查下

  • csfwff 1

    http 未备案会跳到提示备案
    https 未备案直接无法访问
    试试 ip 能不能访问

欢迎来到这里!

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

注册 关于
请输入回帖内容 ...
  • csfwff 1 3 评论

    listen 444
    proxy _pass localhost:8080
    我的大概是这么写的(细节部分自己补一下)

    我把 nginx 得 listen 改成 444, proxy _pass localhost:8080, 然后 --listen_port=444, 然后使用 118.25.78.78:444, 进行访问 直接进不去
    LilNn99
    @LilNn99 域名加端口
    csfwff
    @csfwff 域名加端口的话 直接就进不去
    LilNn99
  • LilNn99

    没有 哈哈哈哈 😂

    1 回复
  • InkDP 5 评论

    啥也别加 就有 D 大 github 的参数 看 8080 能不能访问

    按照 D 哥的方法 然后我用 域名:8080 直接是跳到需要备案的网页, 118.25.78.78:8080, 可以加载页面, 但是还是像之前一样, 静态页面加载不出来, 页面是残缺的
    LilNn99
    @LilNn99 最后一个去掉
    InkDP
    @jinjianh 不带端口, 118.25.78.78?
    LilNn99
    @LilNn99 先这样 docker run --detach --name solo --network=host \ --env RUNTIME_DB="MYSQL" \ --env JDBC_USERNAME="root" \ --env JDBC_PASSWORD="123456" \ --env JDBC_DRIVER="com.mysql.cj.jdbc.Driver" \ --env JDBC_URL="jdbc:mysql://127.0.0.1:3306/solo?useUnicode=yes&characterEncoding=UTF-8&useSSL=false&serverTimezone=UTC" \ b3log/solo --listen_port=8080 --server_scheme=http --server_host=localhost
    InkDP
    @LilNn99 如果你的 ip 加 8080 能正常访问了 你再该我 docker run --detach --name solo --network=host \ --env RUNTIME_DB="MYSQL" \ --env JDBC_USERNAME="root" \ --env JDBC_PASSWORD="123456" \ --env JDBC_DRIVER="com.mysql.cj.jdbc.Driver" \ --env JDBC_URL="jdbc:" \ b3log/solo --listen_port=8080 --server_scheme=http --server_host=localhost --server_port=444 然后 nginx 反代,就实现了访问 444 转发到 80
    InkDP
  • csfwff 1 1 评论
    upstream backend {
        server localhost:8080; # Tomcat/Jetty  原有的监听
    }
    
    server {
            listen       444 ssl;
    		server_name  {ip};
    		charset utf8;
    
       		{ssl相关设置}
    		
    		location / {
    			proxy_pass http://backend$request_uri;
    			proxy_set_header  Host $host:$server_port;
    			proxy_set_header  X-Real-IP  $remote_addr;
    
    			client_max_body_size 10m;
    
                	root   html;
    			index  index.html index.htm;
    			}
    		error_page   500 502 503 504  /50x.html;
            location = /50x.html {
                root   html;
            }
        }
    

    我是这样写的

    1 回复
    服务运行端口 8080,serverport 444
    csfwff
  • LilNn99 2 评论
    docker run --detach --name solo --network=host \
        --env RUNTIME_DB="MYSQL" \
        --env JDBC_USERNAME="root" \
        --env JDBC_PASSWORD="root" \
        --env JDBC_DRIVER="com.mysql.cj.jdbc.Driver" \
        --env JDBC_URL="jdbc:mysql://127.0.0.1:3306/solo?useUnicode=yes&characterEncoding=UTF-8&useSSL=false&serverTimezone=UTC" \
        b3log/solo --listen_port=8080 --server_scheme=http --server_host=localhost --server_port=444
    
    server {
            listen    443 ssl;
            server_name www.lilnn99.cn,lilnn99.cn;
            ssl_certificate  /home/ubuntu/Nginx/1_www.lilnn99.cn_bundle.crt;
            ssl_certificate_key /home/ubuntu/Nginx/2_www.lilnn99.cn.key;
    
            location / {
                    proxy_pass localhost:8080;
            }
    }
    
    server {
            listen     444;
            listen     [::]:80;
            server_name www.lilnn99.cn,lilnn99.cn;
            return 301 https://$host$request_uri;
    }
    

    这样吗?

    1 回复
    proxy_pass http://localhost:8080;
    csfwff
    --server_host=localhost 这里要写你的域名或者 IP 地址啊
    InkDP
  • csfwff 1

    server_host 写你的域名

    1 回复
  • LilNn99 7 评论
    docker run --detach --name solo --network=host \
        --env RUNTIME_DB="MYSQL" \
        --env JDBC_USERNAME="root" \
        --env JDBC_PASSWORD="root" \
        --env JDBC_DRIVER="com.mysql.cj.jdbc.Driver" \
        --env JDBC_URL="jdbc:mysql://127.0.0.1:3306/solo?useUnicode=yes&characterEncoding=UTF-8&useSSL=false&serverTimezone=UTC" \
        b3log/solo --listen_port=8080 --server_scheme=http --server_host=118.25.78.78 --server_port=444
    
    server {
            listen    443 ssl;
            server_name www.lilnn99.cn,lilnn99.cn;
            ssl_certificate  /home/ubuntu/Nginx/1_www.lilnn99.cn_bundle.crt;
            ssl_certificate_key /home/ubuntu/Nginx/2_www.lilnn99.cn.key;
    
            location / {
                    proxy_pass http://localhost:8080;
            }
    }
    
    server {
            listen     444;
            listen     [::]:80;
            server_name www.lilnn99.cn,lilnn99.cn;
            return 301 https://$host$request_uri;
    }
    

    应该是这样没错了吧?
    域名:8080 提示未备案
    公网 IP:8080 无法加载静态页面
    域名:444 找不到页面
    公网 IP:444 找不到页面

    你分两部走,第一确定一下你的 www.lilnn99.cn:8080 或者所:444 是不是可以访问你把 localtion /{}这个里面改成一个本地的静态页面
    InkDP
    试试能不能跑,如果可以,你在弄 solo,不能是 solo 指定的 ip 地址,然后 nginx 指定的又是域名的
    InkDP
    @jinjianh localtion 改成一个本地的静态页面是什么意思 proxy_pass http://localhost:8080 不对吗
    LilNn99
    @LilNn99 nginx 访问本地资源不会吗?我的意思是先别直接访问 solo,因为这样你无法确定是 solo 的问题还是 nginx 的问题,饭一口一口吃,配置一步一步来
    InkDP
    @LilNn99 这是我之前没备案的时候用的,docker run --detach --name solos --network=host --env RUNTIME_DB="MYSQL" --env JDBC_USERNAME="root" --env JDBC_PASSWORD="root" --env JDBC_DRIVER="com.mysql.cj.jdbc.Driver" --env JDBC_URL="jdbc:" b3log/solo --listen_port=8080 --server_scheme=http --server_host=www.jinjianh.com 我直接访问 www.jinjianh.com:8080 就有了 就只启动了 solo 和 mysql 根本没用 nginx
    InkDP
    @jinjianh 我停掉了 nginx 然后直接运行大佬你的命令 然后填写 域名 + 端口 进去了...
    LilNn99
    @jinjianh nginx 访问本地资源确实不会.. 之前从来没接触过.. 一会去补补课
    LilNn99
  • LilNn99

    感觉自己好蠢

    1 回复
  • 多试一下吧。

  • csfwff 1 1 赞同 6 评论

    服务器安全组看看端口有没有开……
    防火墙什么的检查下

    你要么 serverport 写 8080 吧,反正都要带端口了,带 444 和带 8080 是一样的……这样 ip 加端口就能加载静态资源了……
    csfwff
    或者你参考我的 nginx 配置,直接配 444 端口的,不要配 443 然后 301 过去
    csfwff
    安全组的端口我全开了 是不是还得开通 444 端口
    LilNn99
    @csfwff 大佬 说实话 你的 nginx 我都没咋看的太懂 - -
    LilNn99
    @LilNn99 你先确定 ip+8080 能访问,启动 docker 的时候 serverport 写 8080,serverhost 写 ip,这样就是 ip+8080 应该能加载静态资源了
    csfwff
    @LilNn99 可以了之后再考虑反代到 444 以及配 https
    csfwff
  • InkDP 1 1 评论
    • 你先弄 nginx,别管 solo,nginx 也不要配置 https,就尝试一下你的域名:8080 和域名:444 能不能用,不能就试试 IP 加端口
    • 在 nginx 能够访问了,你在尝试配置 htpps。
    • 完成以上两个步骤确定你的域名加端口或者是 IP 加端口是可以访问的,关闭 nginx
    • 然后启动 solo,启动 solo 时,就用你粘贴的命令,但是注意一点如果你上面配置 nginx 的时候域名不可以访问,那你就老老实实用 ip,这里我说的是 --server_host=。这里先不用 --server_port=444 只要前面的 8080。
    • 以上情况能跑的情况下,删掉容器,再加上 --server_port=444 ,让后你访问你的 8080 和 444,确定能跑。
    • 如果你的 nginx 配置 https 成功了的话,你需要再次删掉容器,将 --server_scheme=http 改为 https(上面步骤二失败,步骤一成功,也就是没有配置成功 https,请忽略此步骤)
    • 启动 nginx,注意你的 nginx 里的配置要与 solo 一样,这里指的是 solo 用的 ip,nginx 也要是 ip,solo 用的域名,nginx 也要是域名。
    • ps 未备案的一般会禁止掉 80 和 443,祝你好运
    第一步 测试 nginx 需要停掉 docker 吗, mysql 还在开着
    LilNn99
  • aeneag 1 评论

    我去,为啥非要 Nginx 和 docker 一起弄,你先把 docker 中的 solo 配置好,配置 8080 端口,直接访问就是了,先不用 Nginx,配置好这个再用 Nginx

    嗯... 好了... 谢谢大佬哈
    LilNn99
  • LilNn99

    @participants 小弟愚笨, 谢谢各位大佬耐心指点哈, 感谢! 下去我多补补课 🙏

    1 回复
  • csfwff 2

    trollface 已经被备案拦截了

    1 回复
  • LilNn99 1 评论

    我.... 我刚能访问 我就被逮住了

    1 回复
    这也太给劲了吧
    LilNn99
  • csfwff 1 5 评论

    huaji 然后就是 nginx 了,serverport 改到 444 serverhost 写域名 配了 ssl 的话 serverscheme 写 https
    nginx 你把你现在的 443 直接改成 444,下面 444 的 server 去掉

    安全组需要开放 444 吗
    LilNn99
    @LilNn99 当然要开放……
    csfwff
    我的娘诶 终于好了 谢谢大佬
    LilNn99
    @LilNn99 🤣🤣🤣 不容易呀
    csfwff 1
    @csfwff 真的不容易, 谢谢大佬
    LilNn99
请输入回帖内容 ...

推荐标签 标签

  • 房星科技

    房星网,我们不和没有钱的程序员谈理想,我们要让程序员又有理想又有钱。我们有雄厚的房地产行业线下资源,遍布昆明全城的 100 家门店、四千地产经纪人是我们坚实的后盾。

    6 引用 • 141 回帖 • 561 关注
  • Ruby

    Ruby 是一种开源的面向对象程序设计的服务器端脚本语言,在 20 世纪 90 年代中期由日本的松本行弘(まつもとゆきひろ/Yukihiro Matsumoto)设计并开发。在 Ruby 社区,松本也被称为马茨(Matz)。

    7 引用 • 31 回帖 • 178 关注
  • Facebook

    Facebook 是一个联系朋友的社交工具。大家可以通过它和朋友、同事、同学以及周围的人保持互动交流,分享无限上传的图片,发布链接和视频,更可以增进对朋友的了解。

    4 引用 • 15 回帖 • 456 关注
  • uTools

    uTools 是一个极简、插件化、跨平台的现代桌面软件。通过自由选配丰富的插件,打造你得心应手的工具集合。

    5 引用 • 13 回帖 • 1 关注
  • 微软

    微软是一家美国跨国科技公司,也是世界 PC 软件开发的先导,由比尔·盖茨与保罗·艾伦创办于 1975 年,公司总部设立在华盛顿州的雷德蒙德(Redmond,邻近西雅图)。以研发、制造、授权和提供广泛的电脑软件服务业务为主。

    8 引用 • 44 回帖
  • Hibernate

    Hibernate 是一个开放源代码的对象关系映射框架,它对 JDBC 进行了非常轻量级的对象封装,使得 Java 程序员可以随心所欲的使用对象编程思维来操纵数据库。

    39 引用 • 103 回帖 • 684 关注
  • QQ

    1999 年 2 月腾讯正式推出“腾讯 QQ”,在线用户由 1999 年的 2 人(马化腾和张志东)到现在已经发展到上亿用户了,在线人数超过一亿,是目前使用最广泛的聊天软件之一。

    45 引用 • 557 回帖 • 218 关注
  • HTML

    HTML5 是 HTML 下一个的主要修订版本,现在仍处于发展阶段。广义论及 HTML5 时,实际指的是包括 HTML、CSS 和 JavaScript 在内的一套技术组合。

    103 引用 • 294 回帖
  • Sym

    Sym 是一款用 Java 实现的现代化社区(论坛/BBS/社交网络/博客)系统平台。

    下一代的社区系统,为未来而构建

    523 引用 • 4581 回帖 • 694 关注
  • 服务

    提供一个服务绝不仅仅是简单的把硬件和软件累加在一起,它包括了服务的可靠性、服务的标准化、以及对服务的监控、维护、技术支持等。

    41 引用 • 24 回帖 • 13 关注
  • WordPress

    WordPress 是一个使用 PHP 语言开发的博客平台,用户可以在支持 PHP 和 MySQL 数据库的服务器上架设自己的博客。也可以把 WordPress 当作一个内容管理系统(CMS)来使用。WordPress 是一个免费的开源项目,在 GNU 通用公共许可证(GPLv2)下授权发布。

    45 引用 • 113 回帖 • 309 关注
  • LeetCode

    LeetCode(力扣)是一个全球极客挚爱的高质量技术成长平台,想要学习和提升专业能力从这里开始,充足技术干货等你来啃,轻松拿下 Dream Offer!

    209 引用 • 72 回帖 • 2 关注
  • 反馈

    Communication channel for makers and users.

    123 引用 • 906 回帖 • 193 关注
  • SVN

    SVN 是 Subversion 的简称,是一个开放源代码的版本控制系统,相较于 RCS、CVS,它采用了分支管理系统,它的设计目标就是取代 CVS。

    29 引用 • 98 回帖 • 693 关注
  • Scala

    Scala 是一门多范式的编程语言,集成面向对象编程和函数式编程的各种特性。

    13 引用 • 11 回帖 • 109 关注
  • Kafka

    Kafka 是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者规模的网站中的所有动作流数据。 这种动作(网页浏览,搜索和其他用户的行动)是现代系统中许多功能的基础。 这些数据通常是由于吞吐量的要求而通过处理日志和日志聚合来解决。

    35 引用 • 35 回帖 • 1 关注
  • jsoup

    jsoup 是一款 Java 的 HTML 解析器,可直接解析某个 URL 地址、HTML 文本内容。它提供了一套非常省力的 API,可通过 DOM,CSS 以及类似于 jQuery 的操作方法来取出和操作数据。

    6 引用 • 1 回帖 • 461 关注
  • Gitea

    Gitea 是一个开源社区驱动的轻量级代码托管解决方案,后端采用 Go 编写,采用 MIT 许可证。

    4 引用 • 16 回帖 • 2 关注
  • 自由行
    2 关注
  • 前端

    前端技术一般分为前端设计和前端开发,前端设计可以理解为网站的视觉设计,前端开发则是网站的前台代码实现,包括 HTML、CSS 以及 JavaScript 等。

    247 引用 • 1347 回帖
  • Android

    Android 是一种以 Linux 为基础的开放源码操作系统,主要使用于便携设备。2005 年由 Google 收购注资,并拉拢多家制造商组成开放手机联盟开发改良,逐渐扩展到到平板电脑及其他领域上。

    333 引用 • 323 回帖 • 66 关注
  • 安装

    你若安好,便是晴天。

    128 引用 • 1184 回帖
  • GitLab

    GitLab 是利用 Ruby 一个开源的版本管理系统,实现一个自托管的 Git 项目仓库,可通过 Web 界面操作公开或私有项目。

    46 引用 • 72 回帖
  • JSON

    JSON (JavaScript Object Notation)是一种轻量级的数据交换格式。易于人类阅读和编写。同时也易于机器解析和生成。

    51 引用 • 190 回帖
  • 互联网

    互联网(Internet),又称网际网络,或音译因特网、英特网。互联网始于 1969 年美国的阿帕网,是网络与网络之间所串连成的庞大网络,这些网络以一组通用的协议相连,形成逻辑上的单一巨大国际网络。

    96 引用 • 330 回帖
  • LaTeX

    LaTeX(音译“拉泰赫”)是一种基于 ΤΕΧ 的排版系统,由美国计算机学家莱斯利·兰伯特(Leslie Lamport)在 20 世纪 80 年代初期开发,利用这种格式,即使使用者没有排版和程序设计的知识也可以充分发挥由 TeX 所提供的强大功能,能在几天,甚至几小时内生成很多具有书籍质量的印刷品。对于生成复杂表格和数学公式,这一点表现得尤为突出。因此它非常适用于生成高印刷质量的科技和数学类文档。

    9 引用 • 32 回帖 • 161 关注
  • VirtualBox

    VirtualBox 是一款开源虚拟机软件,最早由德国 Innotek 公司开发,由 Sun Microsystems 公司出品的软件,使用 Qt 编写,在 Sun 被 Oracle 收购后正式更名成 Oracle VM VirtualBox。

    10 引用 • 2 回帖 • 7 关注