我安装了DotNetOpenAuth SDK-3.4.5.10201.vsix,我无法让它工作.它在本地工作(当我作为localhost运行时)但当我尝试发布它不起作用.
我得到的IIS错误消息是
错误摘要
HTTP错误500.22 - 内部服务器错误
检测到的ASP.NET设置不适用于集成管理管道模式.
和
Run Code Online (Sandbox Code Playgroud)Module ConfigurationValidationModule Notification BeginRequest Handler StaticFile Error Code 0x80070032
那么有一些关于如何解决问题的建议:
你可以尝试的事情:
将配置迁移到该
system.webServer/modules部分.您可以手动或通过命令行中的AppCmd执行此操作 - 例如,%SystemRoot%\system32\inetsrv\appcmd migrate config "Default Web Site/".使用AppCmd迁移应用程序将使其能够在集成模式下工作,并继续在经典模式和早期版本的IIS中工作.如果您确定可以忽略此错误,可以通过设置
system.webServer/validation@validateIntegratedModeConfiguration为false 来禁用它 .或者,将应用程序切换到经典模式应用程序池 - 例如,
%SystemRoot%\system32\inetsrv\appcmd set app "Default Web Site/" /applicationPool:"Classic .NET AppPool".只有在您无法迁移应用程序时才能执行此操作.
(将"默认网站"和"经典.NET AppPool"设置为您的应用程序路径和应用程序池名称)
但问题是我无法访问ISS服务器,因为我不是它的所有者.有什么方法可以解决这个问题吗?
我正在使用HttpModule在我的网站上进行一些URL缩短.我使用的是Visual Studio 2008和IIS 7以及.Net 3.5.
在web.config 的system.webServer元素中指定模块,并且该站点在IIS中运行时,它可以正常工作.配置如下所示:
<system.webServer>
<modules>
<add name="MinimizeModule" type="ClipperHouse.UrlMinimizer.MinimizeModule" />
</modules>...
Run Code Online (Sandbox Code Playgroud)
我的模块附加到BeginRequest事件,一切正常.但是,我无法使用内置的VS Web服务器(Cassini)运行它.我尝试将模块配置移动到web.config中的system.web元素,没有运气.我在它上面放了一个断点,没有任何反应.
有关为什么会出现此问题的任何想法?
(我还尝试了global.asax中的Application_BeginRequest事件.虽然我还是希望保留web.config中的所有内容,但仍然没有运气.)