xCss/Valine

国际版域名问题

gears233 opened this issue · 22 comments

如果您想报告错误,请提供以下信息 If you want to report a bug, please provide the following information:

  • 可复现问题的步骤 The steps to reproduce.
    进行评论
  • 可复现问题的网页地址 A minimal demo of the problem via https://jsfiddle.net or http://codepen.io/pen if possible.
    https://gears233.github.io 任意含评论的页面
  • 受影响的Valine版本、操作系统,以及浏览器信息 Which versions of Valine, and which browser / OS are affected by this issue?
    Valine版本 v1.4.14 ,操作系统 win10 ,chrome v85

因为国内节点强制要求备案,所以一直用的国际版,但是今天突然发现 us.avoscloud.com 域名在国内外均已经无法ping通 ,调试界面也显示:POST https://us.avoscloud.com/1.1/classes/Comment net::ERR_TIMED_OUT 导致无法评论。
疑似老域名已不再使用,请求确认与更新。https://forum.leancloud.cn/t/us-avoscloud-com/22749

xCss commented

@gears233 OK,收到,已知问题,将于近期修复,感谢反馈~

现在如果使用国际版LeanCloud作为Valine评论的后端的话则必须指定自定义服务器URL才能正常使用了。
通用域名us.avoscloud.com现在已经恢复正常,但是毕竟还是不稳定,还是推荐指定自定义服务器URL。LeanCloud官方已不推荐使用通用域名。

自定义服务器的URL需要到LeanCloud后台查看。打开后台之后进入Settings - App Keys,找到Domain whitelist,里面的Request domain里面的那个xxxxxxxx.api.lncldglobal.com就是你需要指定的服务器URL。其中xxxxxxxx就是各位的AppID的前8位字符。

NexT主题需要在主题的_config.yml找到valineserverURLs,设置为:

serverURLs: https://xxxxxxxx.api.lncldglobal.com # 把xxxxxxxx替换成你自己AppID的前8位字符

这时候再重新部署应该就可以恢复了。

自定义服务器的URL需要到LeanCloud后台查看。打开后台之后进入Settings - App Keys,找到Domain whitelist,里面的Request domain里面的那个xxxxxxxx.api.lncldglobal.com就是你需要指定的服务器URL。其中xxxxxxxx就是各位的AppID的前8位字符。

感谢提供的建议,我试着实际操作了下,更改前是超时,但是更改后发现获取评论时地址会带上我自己GitHub pages 的地址导致 404.

更改前:
GET https://us.avoscloud.com/1.1/classes/Comment?where=xxxxxx   net::ERR_TIMED_OUT
更改后:
GET https://gears233.github.io/posts/mail/xxxxx.api.lncldglobal.com/1.1/classes/Comment?where=xxxxxx

自定义服务器的URL需要到LeanCloud后台查看。打开后台之后进入Settings - App Keys,找到Domain whitelist,里面的Request domain里面的那个xxxxxxxx.api.lncldglobal.com就是你需要指定的服务器URL。其中xxxxxxxx就是各位的AppID的前8位字符。

感谢提供的建议,我试着实际操作了下,更改前是超时,但是更改后发现获取评论时地址会带上我自己GitHub pages 的地址导致 404.

更改前:
GET https://us.avoscloud.com/1.1/classes/Comment?where=xxxxxx   net::ERR_TIMED_OUT
更改后:
GET https://gears233.github.io/posts/mail/xxxxx.api.lncldglobal.com/1.1/classes/Comment?where=xxxxxx

大致看了一下你用的那个主题的配置方式。猜测可能是你在config.toml里面只写了域名但是没有在前面加HTTPS所以被JS当作相对路径来访问。确认一下你在这个配置文件里面的valineServerURLs是否配置正确。

valineServerURLs = "https://xxxxx.api.lncldglobal.com"

请问1.3.10怎么改呢?GET https://us.avoscloud.com/1.1/classes/Comment?where=xxxxxx net::ERR_TIMED_OUT 的错误在av-min.js里面的e.send(void 0!==n?n:null)里,matery的主题。谢谢!

请问1.3.10怎么改呢?GET https://us.avoscloud.com/1.1/classes/Comment?where=xxxxxx net::ERR_TIMED_OUT 的错误在av-min.js里面的e.send(void 0!==n?n:null)里,matery的主题。谢谢!

@jeffreyouni 你这个主题里面本来就没有给配置自定义URL。。。

你需要去layout/_partial/valine.ejs里面在最下边添加自定义URL的参数。

<script>
    new Valine({
        el: '#vcomments',
        appId: '<%- theme.valine.appId %>',
        appKey: '<%- theme.valine.appKey %>',
        notify: '<%- theme.valine.notify %>' === 'true',
        verify: '<%- theme.valine.verify %>' === 'true',
        visitor: '<%- theme.valine.visitor %>' === 'true',
        avatar: '<%- theme.valine.avatar %>',
        pageSize: '<%- theme.valine.pageSize %>',
        lang: '<% if (config.language == "zh-CN") {  %>zh-cn<% } else { %>en<% } %>',
        placeholder: '<%= theme.valine.placeholder %>'
        ,serverURLs: '<%= theme.valine.serverURLs %>' // 加上这一行
    });
</script>

然后在你主题的_config.ymlvaline添加自定义URL。

# The configuration of the Valine comment module is not activated by default.
# To use it, activate the configuration item and set appId and appKey.
# Valine 评论模块的配置,默认为不激活,如要使用,就请激活该配置项,并设置 appId 和 appKey.
valine:
  enable: false
  appId:
  appKey:
  notify: false
  verify: false
  visitor: true
  avatar: 'mm' # Gravatar style : mm/identicon/monsterid/wavatar/retro/hide
  pageSize: 10
  placeholder: 'just go go' # Comment Box placeholder
  background: /medias/comment_bg.png
  serverURLs: https://你的AppID前8位.api.lncldglobal.com # 加上这一行

大致看了一下你用的那个主题的配置方式。猜测可能是你在config.toml里面只写了域名但是没有在前面加HTTPS所以被JS当作相对路径来访问。确认一下你在这个配置文件里面的valineServerURLs是否配置正确。

valineServerURLs = "https://xxxxx.api.lncldglobal.com"

嗯,是我直接从 leancloud内复制贴进去了,加上https后 问题解决了,非常感谢!

serverURLs: https://你的AppID前8位.api.lncldglobal.com # 加上这一行

好的谢谢,我之前直接把
serverURLs: 'https://xxxxxx.api.lncldglobal.com'
加在了new Valine里面了,不知道为何不生效
现在在config里面添加了就好了,
谢谢你的帮助!

@No5972 谢谢大佬,亲测管用!

从今天傍晚开始,us.leancloud.cn 似乎已经停止解析。

国际版按照上面的方法操作后,依旧提示:

Code -1: Request has been terminated
Possible causes: the network is offline, Origin is not allowed by Access-Control-Allow-Origin, the page is being unloaded, etc. [N/A GET https://xxxxxxx.api.lncldglobal.com/1.1/classes/Comment]

xxxxx为我的AppID的前8位字符。

国际版按照上面的方法操作后,依旧提示:

Code -1: Request has been terminated
Possible causes: the network is offline, Origin is not allowed by Access-Control-Allow-Origin, the page is being unloaded, etc. [N/A GET https://xxxxxxx.api.lncldglobal.com/1.1/classes/Comment]

xxxxx为我的AppID的前8位字符。

升级到最新版本问题解决

最新cdn

<script src="//code.bdstatic.com/npm/leancloud-storage@4.12.0/dist/av-min.js"></script>

最新cdn

<script src="//code.bdstatic.com/npm/leancloud-storage@4.12.0/dist/av-min.js"></script>

您好,此cdn疑似已失效,无法显示valine界面
image

最新cdn

<script src="//code.bdstatic.com/npm/leancloud-storage@4.12.0/dist/av-min.js"></script>

您好,此cdn疑似已失效,无法显示valine界面 image

换成UNPKG 的地址 https://unpkg.com/leancloud-storage@4.12.0/dist/av-min.js

最新cdn

<script src="//code.bdstatic.com/npm/leancloud-storage@4.12.0/dist/av-min.js"></script>

您好,此cdn疑似已失效,无法显示valine界面 image

换成UNPKG 的地址 https://unpkg.com/leancloud-storage@4.12.0/dist/av-min.js

你好,目前leancloud “https://xxxxxxxx.api.lncldglobal.com ” 出现net::ERR_CONNECTION_REFUSED问题
在很多更新换源的网站都已无法评论

最新cdn

<script src="//code.bdstatic.com/npm/leancloud-storage@4.12.0/dist/av-min.js"></script>

您好,此cdn疑似已失效,无法显示valine界面 image

换成UNPKG 的地址 https://unpkg.com/leancloud-storage@4.12.0/dist/av-min.js

你好,目前leancloud “https://xxxxxxxx.api.lncldglobal.com ” 出现net::ERR_CONNECTION_REFUSED问题 在很多更新换源的网站都已无法评论

湖北电信,目前访问正常。

你好,目前leancloud “https://xxxxxxxx.api.lncldglobal.com ” 出现net::ERR_CONNECTION_REFUSED问题 在很多更新换源的网站都已无法评论

湖北电信,目前访问正常。

这边挂到外网后可以正常运转 本地网络无法访问

Leancloud在一次更新中更换了Api域名,导致旧版av-min.js无法接通,可以看看这篇文章
http://atlinker.cn/2022/04/09/lclound.html

你好,目前leancloud “https://xxxxxxxx.api.lncldglobal.com ” 出现net::ERR_CONNECTION_REFUSED问题 在很多更新换源的网站都已无法评论

湖北电信,目前访问正常。

这边挂到外网后可以正常运转 本地网络无法访问

是电脑DNS问题,更改DNS就是好了

eeeeeeeee