SignalR发布后不能生成signalr/hubs

问题:代码写完后,在一台服务器上运行没有问题。换到另外一台服务器上,找不到signalr/hubs,显示404错误。

SignalR版本:2.0.3

VS版本:2013

服务器:Windows Server2008

IIS:7.0

解决:把http://*.com网站上相关的问题都看了一个遍,各种方法都试了。包括:

  1. 在powershell里运行清理

    

net stop w3svc
Remove-Item -Path "C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\root\*" -Force -Recurse
Remove-Item -Path "C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\root\*" -Force -Recurse
net start w3svc

  2. 回收IIS缓冲池

  3. 更改路径

<script src="signalr/hubs" type="text/javascript"></script>

  为

<script src="~/signalr/hubs" type="text/javascript"></script>

  4. 换SignalR的版本

  5. 重新注册.net

c:\Windows\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis.exe -i

  6. 无意中看到:http://*.com/questions/8053229/signalr-hub-not-loading-in-iis-7-but-working-correctly-in-visual-studio/8066242#8066242
修改web.config

  

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

试之,发现出现错误,证明有戏了“未能加载文件或程序集“NuGet.Core, Version=1.0.11220.104, Culture=neutral, PublicKeyToken=31bf3856ad364e35”或它的某一个依赖项。系统找不到指定的文件。“,添加后运行成功。

感慨的是,中文网站没搜到一个有意义的答案,哪怕沾边的!

 
上一篇:什么是C/S模式与B/S模式,两者区别与优缺点


下一篇:Reactor模式(反应器模式)