Solo 博客安装问题

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

错误

1.png

尝试的解决方案

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

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

  • Solo

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

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

    1429 引用 • 10050 回帖 • 486 关注
  • 安装

    你若安好,便是晴天。

    131 引用 • 1184 回帖 • 1 关注
  • Q&A

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

    7273 引用 • 33160 回帖 • 203 关注
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
请输入回帖内容 ...

推荐标签 标签

  • OnlyOffice
    4 引用 • 15 关注
  • Flume

    Flume 是一套分布式的、可靠的,可用于有效地收集、聚合和搬运大量日志数据的服务架构。

    9 引用 • 6 回帖 • 616 关注
  • Rust

    Rust 是一门赋予每个人构建可靠且高效软件能力的语言。Rust 由 Mozilla 开发,最早发布于 2014 年 9 月。

    58 引用 • 22 回帖 • 10 关注
  • 持续集成

    持续集成(Continuous Integration)是一种软件开发实践,即团队开发成员经常集成他们的工作,通过每个成员每天至少集成一次,也就意味着每天可能会发生多次集成。每次集成都通过自动化的构建(包括编译,发布,自动化测试)来验证,从而尽早地发现集成错误。

    14 引用 • 7 回帖
  • Logseq

    Logseq 是一个隐私优先、开源的知识库工具。

    Logseq is a joyful, open-source outliner that works on top of local plain-text Markdown and Org-mode files. Use it to write, organize and share your thoughts, keep your to-do list, and build your own digital garden.

    5 引用 • 62 回帖 • 10 关注
  • iOS

    iOS 是由苹果公司开发的移动操作系统,最早于 2007 年 1 月 9 日的 Macworld 大会上公布这个系统,最初是设计给 iPhone 使用的,后来陆续套用到 iPod touch、iPad 以及 Apple TV 等产品上。iOS 与苹果的 Mac OS X 操作系统一样,属于类 Unix 的商业操作系统。

    84 引用 • 139 回帖 • 2 关注
  • ZeroNet

    ZeroNet 是一个基于比特币加密技术和 BT 网络技术的去中心化的、开放开源的网络和交流系统。

    1 引用 • 21 回帖 • 615 关注
  • OkHttp

    OkHttp 是一款 HTTP & HTTP/2 客户端库,专为 Android 和 Java 应用打造。

    16 引用 • 6 回帖 • 53 关注
  • TextBundle

    TextBundle 文件格式旨在应用程序之间交换 Markdown 或 Fountain 之类的纯文本文件时,提供更无缝的用户体验。

    1 引用 • 2 回帖 • 42 关注
  • Vditor

    Vditor 是一款浏览器端的 Markdown 编辑器,支持所见即所得、即时渲染(类似 Typora)和分屏预览模式。它使用 TypeScript 实现,支持原生 JavaScript、Vue、React 和 Angular。

    337 引用 • 1751 回帖 • 1 关注
  • jQuery

    jQuery 是一套跨浏览器的 JavaScript 库,强化 HTML 与 JavaScript 之间的操作。由 John Resig 在 2006 年 1 月的 BarCamp NYC 上释出第一个版本。全球约有 28% 的网站使用 jQuery,是非常受欢迎的 JavaScript 库。

    63 引用 • 134 回帖 • 728 关注
  • BND

    BND(Baidu Netdisk Downloader)是一款图形界面的百度网盘不限速下载器,支持 Windows、Linux 和 Mac,详细介绍请看这里

    107 引用 • 1281 回帖 • 31 关注
  • NetBeans

    NetBeans 是一个始于 1997 年的 Xelfi 计划,本身是捷克布拉格查理大学的数学及物理学院的学生计划。此计划延伸而成立了一家公司进而发展这个商用版本的 NetBeans IDE,直到 1999 年 Sun 买下此公司。Sun 于次年(2000 年)六月将 NetBeans IDE 开源,直到现在 NetBeans 的社群依然持续增长。

    78 引用 • 102 回帖 • 656 关注
  • abitmean

    有点意思就行了

    32 关注
  • Kotlin

    Kotlin 是一种在 Java 虚拟机上运行的静态类型编程语言,由 JetBrains 设计开发并开源。Kotlin 可以编译成 Java 字节码,也可以编译成 JavaScript,方便在没有 JVM 的设备上运行。在 Google I/O 2017 中,Google 宣布 Kotlin 成为 Android 官方开发语言。

    19 引用 • 33 回帖 • 54 关注
  • V2EX

    V2EX 是创意工作者们的社区。这里目前汇聚了超过 400,000 名主要来自互联网行业、游戏行业和媒体行业的创意工作者。V2EX 希望能够成为创意工作者们的生活和事业的一部分。

    17 引用 • 236 回帖 • 371 关注
  • Mac

    Mac 是苹果公司自 1984 年起以“Macintosh”开始开发的个人消费型计算机,如:iMac、Mac mini、Macbook Air、Macbook Pro、Macbook、Mac Pro 等计算机。

    164 引用 • 594 回帖 • 1 关注
  • 分享

    有什么新发现就分享给大家吧!

    246 引用 • 1780 回帖
  • 区块链

    区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。所谓共识机制是区块链系统中实现不同节点之间建立信任、获取权益的数学算法 。

    91 引用 • 751 回帖
  • PHP

    PHP(Hypertext Preprocessor)是一种开源脚本语言。语法吸收了 C 语言、 Java 和 Perl 的特点,主要适用于 Web 开发领域,据说是世界上最好的编程语言。

    175 引用 • 407 回帖 • 497 关注
  • 支付宝

    支付宝是全球领先的独立第三方支付平台,致力于为广大用户提供安全快速的电子支付/网上支付/安全支付/手机支付体验,及转账收款/水电煤缴费/信用卡还款/AA 收款等生活服务应用。

    29 引用 • 347 回帖
  • 爬虫

    网络爬虫(Spider、Crawler),是一种按照一定的规则,自动地抓取万维网信息的程序。

    106 引用 • 275 回帖
  • Solidity

    Solidity 是一种智能合约高级语言,运行在 [以太坊] 虚拟机(EVM)之上。它的语法接近于 JavaScript,是一种面向对象的语言。

    3 引用 • 18 回帖 • 364 关注
  • Gitea

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

    4 引用 • 16 回帖 • 3 关注
  • 单点登录

    单点登录(Single Sign On)是目前比较流行的企业业务整合的解决方案之一。SSO 的定义是在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统。

    9 引用 • 25 回帖 • 6 关注
  • IDEA

    IDEA 全称 IntelliJ IDEA,是一款 Java 语言开发的集成环境,在业界被公认为最好的 Java 开发工具之一。IDEA 是 JetBrains 公司的产品,这家公司总部位于捷克共和国的首都布拉格,开发人员以严谨著称的东欧程序员为主。

    180 引用 • 400 回帖
  • Python

    Python 是一种面向对象、直译式电脑编程语言,具有近二十年的发展历史,成熟且稳定。它包含了一组完善而且容易理解的标准库,能够轻松完成很多常见的任务。它的语法简捷和清晰,尽量使用无异义的英语单词,与其它大多数程序设计语言使用大括号不一样,它使用缩进来定义语句块。

    540 引用 • 672 回帖