solo 页面无法正常加载

本贴最后更新于 1534 天前,其中的信息可能已经沧海桑田

相关帖子

优质回帖
  • Leif160519 1
    location / {
        proxy_set_header Host $http_host;
        proxy_pass http://127.0.0.1:8080;
    }
    

欢迎来到这里!

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

注册 关于
请输入回帖内容 ...
  • 请详细描述一下搭建过程。

    4 回复
  • Rainsheep

    我的也是,昨天更新完以后,无法正常加载,皮肤消失,排版很乱,点不进去,nijigen 皮肤

  • Rainsheep

    docker 搭建的

  • Rainsheep

    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=https --server_host=********** --server_port= --lute_http=http://127.0.0.1:8249

    1 回复
  • 打开 F12 看下网络请求,可能是静态资源加载有问题。

    1 回复
  • zer0da
    作者

    就是按那个安装教程写的,昨天还能用,今天就不行了。F12 显示是 common.min.js、manifest.json、base.css 报了 net::ERR_SSL_PROTOCOL_ERROR 错误

  • Rainsheep

    是静态资源问题 加载不了 怎么解决呢 docker 重新部署还是这样

  • @Rainsheep @zer0da 麻烦发一下具体请求的链接,这样方便排查。

    2 回复
  • zer0da
    作者
  • @Rainsheep @zer0da 麻烦再次更新镜像重启观察

    2 回复
  • Rainsheep

    重启了 没啥用 还一样

  • zer0da
    作者

    我也是 是不是主题有问题

    1 回复
  • 你这边的启动参数贴一下。

    1 回复
  • Rainsheep

    你哪个主题? 应该不是主题问题吧 我看访问请求,访问的端口有问题 你使用 nginx 了吗

    1 回复
  • 不是主题的问题,看上去可能是 NGINX 配置有问题。确定一下是否加了这句:

    proxy_set_header Host $http_host;

    https://hacpai.com/article/1492881378588

    2 回复
  • zer0da
    作者

    好像 NGINX 里没这句

    1 回复
  • 请参考用户指南加上应该就没问题了。

  • Rainsheep

    没有, 在 location / {
    proxy_pass http://www.rainsheep.top:8080;
    }这里面吗

    1 回复
  • 对的,还有其他的几条最好也加上,麻烦参考用户指南。

    2 回复
  • zer0da
    作者

    OK 了, 谢谢啦。

  • Rainsheep

    我遇到一个问题,不知道为什么。nginx 配置文件。

    upstream backend {
        server localhost:8080;
    }
    location / {
            proxy_pass http://backend$request_uri;
    }
    

    按照上面那样配的话出现 502。

    当我直接这样配置的话

    location / {
            proxy_pass http://www.rainsheep.top:8080;
    }
    

    就可以访问,这是什么原因

    1 回复
  • 第二种配置方式可能会把 Host 标头传递给上游服务,仅仅是猜测。

    1 回复
  • Rainsheep

    第一种为什么会出现 502 错误?

    1 回复
  • 502 的话 Solo 的日志有什么报错么?

    1 回复
  • Rainsheep
    [WARN ]-[2020-02-05 18:54:46]-[com.zaxxer.hikari.pool.PoolBase:180]: HikariPool-1 - Failed to validate connection com.mysql.cj.jdbc.ConnectionImpl@7ba4ae5 (No operations allowed after connection closed.). Possibly consider using a shorter maxLifetime value. 
    
    1 回复
  • 这是数据库连接问题,和 NGINX 配置没有关系。检查下数据库是不是连不上吧。

    1 回复
  • Rainsheep

    抱歉,这个错误信息是我刚修改 MySQL 内存的时候报的错误, 页面显示 502 的时候 solo 没有报错

    1 回复
  • 你再重新给我一下目前的启动命令还有访问方式才好判断问题。

    2 回复
  • Rainsheep

    solo 启动命令:

    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=https --server_host=www.rainsheep.top --server_port=
    

    访问方式:www.rainsheep.top

    nginx 启动命令:

    docker run -d -p 80:80 -p 443:443 --name nginx \
    -v /dockerData/nginx/conf/nginx.conf:/etc/nginx/nginx.conf \
    -v /dockerData/nginx/conf/conf.d:/etc/nginx/conf.d \
    -v /dockerData/nginx/ssl:/ssl/ \
    -v /dockerData/nginx/www:/usr/share/nginx/html \
    -v /dockerData/nginx/logs:/var/log/nginx nginx
    
    1 回复
  • http 80 端口拒绝了连接,用 https 的话返回 502,应该是 NGINX 配置有问题吧,再贴下 NGINX 配置吧。

  • Rainsheep

    这是 nginx 的配置文件:

    upstream backend {
        server localhost:8080;
    }
    server {
        listen       443;
        server_name  www.rainsheep.top;
    	access_log off;
    	
    	ssl on;
    	ssl_certificate /ssl/3118615_rainsheep.top.pem;
    	ssl_certificate_key /ssl/3118615_rainsheep.top.key;
    	ssl_session_timeout 5m;
    	ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    	ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
    	ssl_prefer_server_ciphers on;
    
        location / {
    	#这样写的话,可以访问
    	proxy_pass http://www.rainsheep.top:8080;
    	#这样写的话,不能访问
            proxy_pass http://backend$request_uri;
            proxy_set_header  Host $http_host;
            proxy_set_header  X-Real-IP  $remote_addr;
            client_max_body_size  10m;
        }
    }
    
    1 回复
  • proxy_pass http://backend$request_uri; 这样写没错的,我刚刚测试过。但你的有问题,我也很迷茫 🤣

    1 回复
  • Rainsheep

    好,那我改成那个吧,能访问就行,别的就先不管啦。

    1 回复
  • 我知道为啥了,你用了两个 docker 容器,但是 NGINX 容器没有在宿主机网络上,也就是说 Solo 和 NGINX 网络是不通的,这就导致了使用命名 backend 时候的 502。但如果你使用域名反代的话走的是公网解析网络,所以没有问题。

    1 回复
  • Rainsheep

    明白了 感谢

  • Leif160519 1 1 评论
    location / {
        proxy_set_header Host $http_host;
        proxy_pass http://127.0.0.1:8080;
    }
    
    1 回复
    这样写就 OK 了,反正不知道为何,之前只有第二句都是可以的,更新了新的镜像之后,第一句必须有才行
    Leif160519 1 1 赞同
  • zzjjhh001

    nice

  • cyang

    想问大佬,导出的静态页面出这个问题怎么解决?

请输入回帖内容 ...

推荐标签 标签

  • 外包

    有空闲时间是接外包好呢还是学习好呢?

    26 引用 • 232 回帖 • 8 关注
  • Android

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

    333 引用 • 322 回帖 • 73 关注
  • 区块链

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

    91 引用 • 751 回帖 • 1 关注
  • Node.js

    Node.js 是一个基于 Chrome JavaScript 运行时建立的平台, 用于方便地搭建响应速度快、易于扩展的网络应用。Node.js 使用事件驱动, 非阻塞 I/O 模型而得以轻量和高效。

    138 引用 • 268 回帖 • 202 关注
  • JavaScript

    JavaScript 一种动态类型、弱类型、基于原型的直译式脚本语言,内置支持类型。它的解释器被称为 JavaScript 引擎,为浏览器的一部分,广泛用于客户端的脚本语言,最早是在 HTML 网页上使用,用来给 HTML 网页增加动态功能。

    710 引用 • 1173 回帖 • 177 关注
  • BookxNote

    BookxNote 是一款全新的电子书学习工具,助力您的学习与思考,让您的大脑更高效的记忆。

    笔记整理交给我,一心只读圣贤书。

    1 引用 • 1 回帖 • 3 关注
  • Eclipse

    Eclipse 是一个开放源代码的、基于 Java 的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。

    75 引用 • 258 回帖 • 631 关注
  • SQLServer

    SQL Server 是由 [微软] 开发和推广的关系数据库管理系统(DBMS),它最初是由 微软、Sybase 和 Ashton-Tate 三家公司共同开发的,并于 1988 年推出了第一个 OS/2 版本。

    19 引用 • 31 回帖 • 2 关注
  • Hibernate

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

    39 引用 • 103 回帖 • 682 关注
  • Ngui

    Ngui 是一个 GUI 的排版显示引擎和跨平台的 GUI 应用程序开发框架,基于
    Node.js / OpenGL。目标是在此基础上开发 GUI 应用程序可拥有开发 WEB 应用般简单与速度同时兼顾 Native 应用程序的性能与体验。

    7 引用 • 9 回帖 • 345 关注
  • 招聘

    哪里都缺人,哪里都不缺人。

    189 引用 • 1056 回帖
  • 又拍云

    又拍云是国内领先的 CDN 服务提供商,国家工信部认证通过的“可信云”,乌云众测平台认证的“安全云”,为移动时代的创业者提供新一代的 CDN 加速服务。

    21 引用 • 37 回帖 • 512 关注
  • OkHttp

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

    16 引用 • 6 回帖 • 54 关注
  • etcd

    etcd 是一个分布式、高可用的 key-value 数据存储,专门用于在分布式系统中保存关键数据。

    5 引用 • 26 回帖 • 492 关注
  • DNSPod

    DNSPod 建立于 2006 年 3 月份,是一款免费智能 DNS 产品。 DNSPod 可以为同时有电信、网通、教育网服务器的网站提供智能的解析,让电信用户访问电信的服务器,网通的用户访问网通的服务器,教育网的用户访问教育网的服务器,达到互联互通的效果。

    6 引用 • 26 回帖 • 521 关注
  • 以太坊

    以太坊(Ethereum)并不是一个机构,而是一款能够在区块链上实现智能合约、开源的底层系统。以太坊是一个平台和一种编程语言 Solidity,使开发人员能够建立和发布下一代去中心化应用。 以太坊可以用来编程、分散、担保和交易任何事物:投票、域名、金融交易所、众筹、公司管理、合同和知识产权等等。

    34 引用 • 367 回帖 • 1 关注
  • 旅游

    希望你我能在旅途中找到人生的下一站。

    85 引用 • 895 回帖
  • abitmean

    有点意思就行了

    21 关注
  • 脑图

    脑图又叫思维导图,是表达发散性思维的有效图形思维工具 ,它简单却又很有效,是一种实用性的思维工具。

    21 引用 • 58 回帖
  • WordPress

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

    45 引用 • 113 回帖 • 319 关注
  • Git

    Git 是 Linux Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。

    205 引用 • 357 回帖
  • Java

    Java 是一种可以撰写跨平台应用软件的面向对象的程序设计语言,是由 Sun Microsystems 公司于 1995 年 5 月推出的。Java 技术具有卓越的通用性、高效性、平台移植性和安全性。

    3167 引用 • 8207 回帖
  • GitLab

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

    46 引用 • 72 回帖 • 1 关注
  • QQ

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

    45 引用 • 557 回帖 • 228 关注
  • JetBrains

    JetBrains 是一家捷克的软件开发公司,该公司位于捷克的布拉格,并在俄国的圣彼得堡及美国麻州波士顿都设有办公室,该公司最为人所熟知的产品是 Java 编程语言开发撰写时所用的集成开发环境:IntelliJ IDEA

    18 引用 • 54 回帖
  • BAE

    百度应用引擎(Baidu App Engine)提供了 PHP、Java、Python 的执行环境,以及云存储、消息服务、云数据库等全面的云服务。它可以让开发者实现自动地部署和管理应用,并且提供动态扩容和负载均衡的运行环境,让开发者不用考虑高成本的运维工作,只需专注于业务逻辑,大大降低了开发者学习和迁移的成本。

    19 引用 • 75 回帖 • 618 关注
  • Vim

    Vim 是类 UNIX 系统文本编辑器 Vi 的加强版本,加入了更多特性来帮助编辑源代码。Vim 的部分增强功能包括文件比较(vimdiff)、语法高亮、全面的帮助系统、本地脚本(Vimscript)和便于选择的可视化模式。

    27 引用 • 66 回帖