solo 升级 v4.2, 访问不了了

按照 https://github.com/88250/solo/blob/master/scripts/docker-restart.sh 这个脚本进行升级,升级后,网页无法进入,查看 docker 日志,报如下错误:

[ERROR]-[2020-07-07 15:41:15]-[org.b3log.latke.http.renderer.AbstractFreeMarkerRenderer:104]: Renders template [index.ftl] failed [Request [
    method=GET,
    URI=/,
    contentType=null,
    remoteAddr=117.79.83.55,
    headers=[
        Host=www.*****.com.cn
        X-Forwarded-For=117.79.83.55
        X-Real-IP=117.79.83.55
        Upgrade-Insecure-Requests=1
        User-Agent=Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.116 Safari/537.36
        Accept=text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9
        Sec-Fetch-Site=none
        Sec-Fetch-Mode=navigate
        Sec-Fetch-User=?1
        Sec-Fetch-Dest=document
        Accept-Encoding=gzip, deflate, br
        Accept-Language=zh-CN,zh;q=0.9
        Cookie=LATKE_SESSION_ID=kM0j26qCtKTpP5Tm
        content-length=0
    ]
]]
freemarker.core.InvalidReferenceException: The following has evaluated to null or missing:
==> statistic.statisticPublishedBlogCommentCount  [in template "skins/nexmoe/side.ftl" at line 32, column 15]

----
Tip: It's the step after the last dot that caused this error, not those before it.
----
Tip: If the failing expression is known to legally refer to something that's sometimes null or missing, either specify a default value like myOptionalVar!myDefault, or use <#if myOptionalVar??>when-present<#else>when-missing</#if>. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)??
----

----
FTL stack trace ("~" means nesting-related):
	- Failed at: ${statistic.statisticPublishedBlogCom...  [in template "skins/nexmoe/side.ftl" at line 32, column 13]
	- Reached through: #include "side.ftl"  [in template "skins/nexmoe/index.ftl" at line 35, column 5]
----
	at freemarker.core.InvalidReferenceException.getInstance(InvalidReferenceException.java:134) ~[freemarker-2.3.30.jar:2.3.30]
	at freemarker.core.EvalUtil.coerceModelToTextualCommon(EvalUtil.java:481) ~[freemarker-2.3.30.jar:2.3.30]
	at freemarker.core.EvalUtil.coerceModelToStringOrMarkup(EvalUtil.java:401) ~[freemarker-2.3.30.jar:2.3.30]
	at freemarker.core.EvalUtil.coerceModelToStringOrMarkup(EvalUtil.java:370) ~[freemarker-2.3.30.jar:2.3.30]
	at freemarker.core.DollarVariable.calculateInterpolatedStringOrMarkup(DollarVariable.java:100) ~[freemarker-2.3.30.jar:2.3.30]
	at freemarker.core.DollarVariable.accept(DollarVariable.java:63) ~[freemarker-2.3.30.jar:2.3.30]
	at freemarker.core.Environment.visit(Environment.java:334) ~[freemarker-2.3.30.jar:2.3.30]
	at freemarker.core.Environment.visit(Environment.java:340) ~[freemarker-2.3.30.jar:2.3.30]
	at freemarker.core.Environment.include(Environment.java:2925) ~[freemarker-2.3.30.jar:2.3.30]
	at freemarker.core.Include.accept(Include.java:171) ~[freemarker-2.3.30.jar:2.3.30]
	at freemarker.core.Environment.visit(Environment.java:334) ~[freemarker-2.3.30.jar:2.3.30]
	at freemarker.core.Environment.visit(Environment.java:340) ~[freemarker-2.3.30.jar:2.3.30]
	at freemarker.core.Environment.process(Environment.java:313) ~[freemarker-2.3.30.jar:2.3.30]
	at freemarker.template.Template.process(Template.java:383) ~[freemarker-2.3.30.jar:2.3.30]
	at org.b3log.latke.http.renderer.AbstractFreeMarkerRenderer.genHTML(AbstractFreeMarkerRenderer.java:127) ~[latke-core-3.4.10.jar:?]
	at org.b3log.solo.processor.SkinRenderer.genHTML(SkinRenderer.java:81) ~[solo/:?]
	at org.b3log.latke.http.renderer.AbstractFreeMarkerRenderer.render(AbstractFreeMarkerRenderer.java:98) [latke-core-3.4.10.jar:?]
	at org.b3log.latke.http.Dispatcher.renderResponse(Dispatcher.java:120) [latke-core-3.4.10.jar:?]
	at org.b3log.latke.http.Dispatcher.handle(Dispatcher.java:92) [latke-core-3.4.10.jar:?]
	at org.b3log.latke.http.ServerHandler.channelRead0(ServerHandler.java:78) [latke-core-3.4.10.jar:?]
	at org.b3log.latke.http.ServerHandler.channelRead0(ServerHandler.java:34) [latke-core-3.4.10.jar:?]
	at io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:99) [netty-transport-4.1.49.Final.jar:4.1.49.Final]
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) [netty-transport-4.1.49.Final.jar:4.1.49.Final]
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) [netty-transport-4.1.49.Final.jar:4.1.49.Final]
	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357) [netty-transport-4.1.49.Final.jar:4.1.49.Final]
	at org.b3log.latke.http.WebSocketHandler.handleHttpRequest(WebSocketHandler.java:90) [latke-core-3.4.10.jar:?]
	at org.b3log.latke.http.WebSocketHandler.channelRead0(WebSocketHandler.java:47) [latke-core-3.4.10.jar:?]
	at io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:99) [netty-transport-4.1.49.Final.jar:4.1.49.Final]
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) [netty-transport-4.1.49.Final.jar:4.1.49.Final]
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) [netty-transport-4.1.49.Final.jar:4.1.49.Final]
	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357) [netty-transport-4.1.49.Final.jar:4.1.49.Final]
	at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:103) [netty-codec-4.1.49.Final.jar:4.1.49.Final]
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) [netty-transport-4.1.49.Final.jar:4.1.49.Final]
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) [netty-transport-4.1.49.Final.jar:4.1.49.Final]
	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357) [netty-transport-4.1.49.Final.jar:4.1.49.Final]
	at io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext.fireChannelRead(CombinedChannelDuplexHandler.java:436) [netty-transport-4.1.49.Final.jar:4.1.49.Final]
	at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:324) [netty-codec-4.1.49.Final.jar:4.1.49.Final]
	at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:296) [netty-codec-4.1.49.Final.jar:4.1.49.Final]
	at io.netty.channel.CombinedChannelDuplexHandler.channelRead(CombinedChannelDuplexHandler.java:251) [netty-transport-4.1.49.Final.jar:4.1.49.Final]
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) [netty-transport-4.1.49.Final.jar:4.1.49.Final]
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) [netty-transport-4.1.49.Final.jar:4.1.49.Final]
	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357) [netty-transport-4.1.49.Final.jar:4.1.49.Final]
	at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1410) [netty-transport-4.1.49.Final.jar:4.1.49.Final]
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) [netty-transport-4.1.49.Final.jar:4.1.49.Final]
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) [netty-transport-4.1.49.Final.jar:4.1.49.Final]
	at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:919) [netty-transport-4.1.49.Final.jar:4.1.49.Final]
	at io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe.epollInReady(AbstractEpollStreamChannel.java:792) [netty-transport-native-epoll-4.1.49.Final-linux-x86_64.jar:4.1.49.Final]
	at io.netty.channel.epoll.EpollEventLoop.processReady(EpollEventLoop.java:475) [netty-transport-native-epoll-4.1.49.Final-linux-x86_64.jar:4.1.49.Final]
	at io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:378) [netty-transport-native-epoll-4.1.49.Final-linux-x86_64.jar:4.1.49.Final]
	at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:989) [netty-common-4.1.49.Final.jar:4.1.49.Final]
	at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74) [netty-common-4.1.49.Final.jar:4.1.49.Final]
	at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) [netty-common-4.1.49.Final.jar:4.1.49.Final]
	at java.lang.Thread.run(Thread.java:748) [?:1.8.0_212]

网页访问,提示 500

image.png

赞助商 我要投放

欢迎来到这里!

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

注册 关于
请输入回帖内容 ...
  • aliezHub
    作者

    😭 求助

  • 88250

    皮肤是外挂的吗?用内置皮肤试试看。

    2 回复
  • aliezHub
    作者

    嗯嗯,用的外挂皮肤,我试试内置的先

  • aliezHub
    作者

    果然是外挂皮肤惹的祸,现在用内置皮肤是能正常启动的,也可以正常访问。现在外置皮肤就用不了了呗 😂

  • aliezHub
    作者

    谢谢大佬,可以了,用内置皮肤可以正常启动,也能正常访问了