zoukankan      html  css  js  c++  java
  • 记一次SignalR的部署错误问题

    前不久的工作中,需要集成signalr和vue实现一个消息推送的前端展示页面,集成倒是很顺利,nuget和npm就解决了问题,但接下来的部署上遇到了几个问题,需要记录一下:

    问题1 : 集成了redis缓存链接,在部署时未安装redis,导致signalr一直启动不起来,但又明确的提示错误。

                在开发时使用了redis缓存,并配置了signalr使用redis,部分方法在使用上没有用到redis,而部署时的业务不需要redis,因此未安装redis,运行时一直出现signalr连接不上的问题,

       查了很多资料都是signalr2.0 的版本的错误,最后尝试去掉

     //使用redis              GlobalHost.DependencyResolver.UseRedis(scaleoutConfiguration);

       果然是这里导致,页面可以正确的连接signalr服务器了,未用到redis,不能再启动时配置signalr使用redis

    问题2 : 在本机IIS上发布运行正确,更换到其他人的电脑IIS发现不能链接signalR服务端,错误

    vendor.js:45 GET http://localhost:6677/signalr/negotiate?clientProtocol=1.5&connectionData=%5B%7B%22name%22%3A%22remindhub%22%7D%5D&_=1543892771079 404 (Not Found)send @ vendor.js:45d.extend.ajax @ vendor.js:45e.transports._logic.ajax @ vendor.js:54e.fn.e.start @ vendor.js:54F._.deferredStartHandler @ vendor.js:54d.event.dispatch @ vendor.js:45s.handle @ vendor.js:45
    ISMS.js:1 Error: Error during negotiation request.(…)
    ISMS.js:1 Could not connect
    ISMS.js:1 disconnected
    ISMS.js:1 reconnect
    vendor.js:54 Uncaught Error: SignalR: Error loading hubs. Ensure your hubs reference is correct, e.g. <script src='/signalr/js'></script>.
    

     因为本机和部分电脑的发布是正常的,唯独单独的那台服务器运行会报错,推测是环境的问题,经过搜索资料发现需要增加以下配置

      <system.webServer>
        <validation validateIntegratedModeConfiguration="false" />
        <modules runAllManagedModulesForAllRequests="true" />
      </system.webServer>

    试着在出错的服务器的web.config加上配置后,问题解决

     

  • 相关阅读:
    python
    python
    Django+Scrapy结合使用并爬取数据入库
    python--scrapy框架爬取分页数据与详情页数据
    python--简单的jQuery-Ajax使用
    python--scrapy框架配置redis数据库或者mongdb数据库
    ajax分页
    django分页
    Jquery获取输入框属性file,ajax传输后端,下载图片
    Django中web开发用md5加密图片名并存储静态文件夹
  • 原文地址:https://www.cnblogs.com/dpwow/p/10063334.html
Copyright © 2011-2022 走看看