标签: iis-8

URL中的点导致404使用ASP.NET mvc和IIS

我有一个项目,要求我的URL在路径中有点.例如,我可能有一个URL,例如www.example.com/people/michael.phelps

带点的网址生成404.我的路由很好.如果我通过michaelphelps,没有圆点,那么一切正常.如果我添加点我得到404错误.示例站点在带有IIS8 Express的Windows 7上运行.URLScan未运行.

我尝试将以下内容添加到我的web.config中:

<security>
  <requestFiltering allowDoubleEscaping="true"/>
</security>
Run Code Online (Sandbox Code Playgroud)

不幸的是,没有什么区别.我刚收到404.0 Not Found错误.

这是一个MVC4项目,但我不认为这是相关的.我的路由工作正常,我期望的参数在那里,直到它们包含一个点.

我需要配置什么才能在网址中加点?

iis asp.net-mvc iis-7 iis-express iis-8

298
推荐指数
7
解决办法
9万
查看次数

IIS8上的WCF;*.svc处理程序映射不起作用

我试图在2012年版本8400上运行IIS8中运行的wcf服务.

在安装web角色时,没有像2008年那样找到wcf的东西(3.51以下).

安装时svc处理程序映射丢失了,所以我做了一个:

%windir%\Microsoft.NET\Framework\v3.0\WindowsCommunication Foundation\ServiceModelReg.exe –i
Run Code Online (Sandbox Code Playgroud)

现在处理程序映射就在那里,但我仍然得到:

The resource you are looking for does not have a handler associated with it.
Run Code Online (Sandbox Code Playgroud)

(我删除了静态文件处理程序.)

该网站使用经典管道以使用模拟.

asp.net wcf iis-8 iis-8.5

264
推荐指数
6
解决办法
20万
查看次数

HTTP错误500.19和错误代码:0x80070021

我有一个由Visual Studio 2013构建的简单webAPI.当我从VS13运行它时效果很好但是当我在本地IIS中复制项目时它会给我以下错误.

HTTP错误500.19 - 内部服务器错误无法访问请求的页面,因为页面的相关配置数据无效.

详细错误信息:

模块 IIS Web核心

通知 BeginRequest

处理程序 尚未确定

错误代码 0x80070021

配置错误 此配置部分不能在此路径中使用.当该部分被锁定在父级别时会发生这种情况.锁定是默认情况下(overrideModeDefault ="Deny"),或由locationMode ="Deny"或遗留allowOverride ="false"的位置标记显式设置.

配置文件 \?\ C:\ inetpub\wwwroot\APITeslin\web.config

配置来源:

36:   <system.webServer>  
37:     <handlers>  
38:       <remove name="ExtensionlessUrlHandler-Integrated-4.0" />
Run Code Online (Sandbox Code Playgroud)

iis asp.net-mvc asp.net-web-api iis-8 asp.net-mvc-5

199
推荐指数
9
解决办法
31万
查看次数

ASP.NET Web API - 不允许PUT和DELETE动词 - IIS 8

我最近从Visual Studio 2010升级到Visual Studio 2012 RC.安装程序还会安装IIS 8 Express,Visual Studio现在将其用作默认Web服务器.

IIS 8阻止了我使用PUT AND DELETE谓词的WEB API请求.IIS返回405错误,The requested resource does not support http method 'PUT'.

我知道过去人们对此有疑问,Stack Overflow上有几条关于它的消息.使用IIS 7 Express,解决方案是卸载WebDav.不幸的是,我没有看到任何与IIS 8相关的方法.

我已经尝试从applicationhost.config编辑出WebDav部分,但这没有帮助.例如,我<add name="WebDAVModule" image="%IIS_BIN%\webdav.dll" />从配置文件中删除了.

我花了很长时间才研究这个问题.必须有一种简单的方法来启用PUT和DELETE?

asp.net iis asp.net-web-api iis-8

141
推荐指数
9
解决办法
18万
查看次数

IIS8中的IIS_IUSRS和IUSR权限

我刚刚从Win2003上的IIS6迁移到Win2012上的IIS8,用于托管ASP.NET应用程序.

在我的应用程序的一个特定文件夹中,我需要创建和删除文件.将文件复制到新服务器后,当我尝试删除文件时,我一直看到以下错误:

访问路径'D:\ WebSites\myapp.co.uk\companydata\filename.pdf'被拒绝.

当我检查IIS时,我看到应用程序在DefaultAppPool帐户下运行,但是,我从未在此文件夹上设置Windows权限以包含IIS AppPool\DefaultAppPool

相反,为了停止尖叫客户,我在该文件夹上授予了以下权限:

IUSR

  • 阅读并执行
  • 列出文件夹内容

IIS_IUSRS

  • 修改
  • 阅读并执行
  • 列出文件夹内容

这似乎有效,但我担心已经设置了太多的权限.我在网上阅读了有关IUSR是否真的需要的相互矛盾的信息.任何人都可以澄清哪些用户/权限足以创建和删除此文件夹上的文档吗?此外,IUSR是IIS_IUSRS组的一部分吗?

更新和解决方案

请参阅下面的答案.我不得不遗憾地做到这一点,因为最近的一些建议没有经过深思熟虑,甚至是安全的(IMO).

iis permissions asp.net-4.5 iis-8 windows-server-2012

134
推荐指数
4
解决办法
35万
查看次数

通过MSDeploy.exe从WMSvc获取404

从安装了Web管理服务的Windows 8到Windows Server 2012(IIS 8),我可以使用W8上的IIS管理器来管理远程服务器,但是当我执行以下命令时,我从WMSvc获得了404.7:

msdeploy.exe" -verb:dump -source:contentPath=c:\InetPub\wwwroot,computerName=https://uktnws01:8172/MsDeploy.axd,userName=corp\administrator,password=WMSvcIsCrap,authType=Basic -allowUntrusted
Run Code Online (Sandbox Code Playgroud)

我尝试了各种组合和参数.我可以telnet到那个端口,我知道它是开放的.

我只是从Windows中删除管理服务功能并重新启动.我会给苏打水倒一些零食.在此期间,如果您有任何想法,请分享.

加入我下面的实时博客并按照操作行动.

更新1

随着管理服务被删除,我现在得到了

错误:无法连接到远程服务器错误:无法建立连接,因为目标计算机主动拒绝它192.168.2.22:8172错误计数:1.

第二行是新消息!哇噢.

更新2

好吧,现在事情变得越来越糟.自重新安装以来,远程IIS控制台将在证书上发出警报,然后说,

服务器不接受远程连接.

但我认为这是因为我可能没有重新启用远程管理,除了安装该死的东西.

更新3

启用远程管理后,远程IIS再次运行,但404已返回.只是为了SEO的利益,这里是完整的错误:

Error Code: ERROR_DESTINATION_NOT_REACHABLE More Information: Could not connect to the remote computer ("uktnws01"). On the remote computer, make sure that Web Deploy is installed and that the required process ("Web Management Service") is started.  Learn more at http://go.microsoft.com/fwlink/?LinkId=221672#ERROR_DESTINATION_NOT_REACHABLE.
Error: The remote server returned an error: (404) Not Found.
Error count: 1.
Run Code Online (Sandbox Code Playgroud)

更新4

通过VPN到客户端尝试对另一个Web服务器执行相同的命令,这是一个魅力!看起来IIS在我绝对打屁股的新2012版本上是不感兴趣的.

更新5

我为WMSvc启用了失败的请求跟踪,并且已经看到404.7来自RequestFilteringModule模块.根据文档,404.7是"文件扩展名被拒绝".

http://www.iis.net/configreference/system.webserver/security/requestfiltering

但是,为.axd文件添加显式服务器规则并没有帮助.有兴趣看到这个模块,因为它对URL长度和内容大小施加了限制.您能想象在IIS托管的WCF应用程序中对此进行故障排除!哈哈.我真的哭了.

更新6 …

iis msdeploy iis-8

116
推荐指数
7
解决办法
5万
查看次数

Server 2012 IIS 8 MVC应用程序显示默认的IIS主页或403/404错误

使用Oracle的免费VirtualBox应用程序运行Microsoft Server 2012 RC.在VirtualBox设置中使用桥接网络适配器类型.安装了AD和DNS,IIS.在IIS选项管理工具下,单击管理服务的框.这使我可以使用Visual Studio 2012 RC中的"Web部署"功能.在客户操作系统上,我运行Windows 7旗舰版.

我能够成功地将MVC 4应用程序部署到IIS默认网站,但它没有显示.相反,默认的IIS主页是.我禁用了默认主页并刷新了显示403页面的页面.我尝试在其中一个视图中键入并显示404页面.

asp.net-mvc iis-8

83
推荐指数
1
解决办法
3万
查看次数

IIS8 Win8和runAllManagedModulesForAllRequests ="true"

我试图在IIS8中运行具有以下配置的应用程序:

<modules runAllManagedModulesForAllRequests="true" />
Run Code Online (Sandbox Code Playgroud)

IIS8给我一个错误,说...

此配置部分不能在此路径中使用.当该部分被锁定在父级别时会发生这种情况.锁定是默认情况下(overrideModeDefault ="Deny"),或由locationMode ="Deny"或遗留allowOverride ="false"的位置标记显式设置.

我猜测错误和快速SO搜索有一些更高级别的安全设置阻止该行被允许.有任何想法吗?

asp.net-mvc-3 iis-8

75
推荐指数
2
解决办法
5万
查看次数

IIS配置错误 - 此配置部分不能在此路径中使用

当我尝试运行我的网站时,我收到以下错误.

该网站托管在Windows 2012 R2上.

配置错误:此配置部分不能在此路径中使用.当该部分被锁定在父级别时会发生这种情况.锁定是默认情况下(overrideModeDefault ="Deny"),或由locationMode ="Deny"或遗留allowOverride ="false"的位置标记显式设置.

错误代码:0x80070021

配置来源:

 60:     <httpErrors errorMode="Detailed" />
 61:     <handlers>
 62:       <remove name="ExtensionlessUrlHandler-Integrated-4.0" />
Run Code Online (Sandbox Code Playgroud)

以下是我所尝试的内容:

  1. 使用IIS中的"添加功能和角色"安装.Net 3.5
  2. 在applicationHost文件中,我对以下代码进行了更改:

    将部分处理程序,模块,anonymousAuthentication,basicAuthentication等的overrideModeDefault从"Deny"更改为"Allow".

  3. 在.Net 3.5和4.5中完成了"HTTP激活".

下面是我的web配置文件处理程序代码:

<handlers>
  <remove name="ExtensionlessUrlHandler-Integrated-4.0"/>
  <remove name="OPTIONSVerbHandler"/>
  <remove name="TRACEVerbHandler"/>
  <add name="ExtensionlessUrlHandler-Integrated-4.0" path="*." verb="*" type="System.Web.Handlers.TransferRequestHandler" preCondition="integratedMode,runtimeVersionv4.0"/>
</handlers>
Run Code Online (Sandbox Code Playgroud)
  1. 安装此路径中功能窗口中的所有功能:Internet信息服务 - >万维网服务 - >应用程序开发功能 - >除了CGI之外的所有功能都已启用.

  2. 在功能委托中,ASP之前是Read Only,我已将其更改为Read/Write

  3. 使用命令提示符解锁处理程序

但我仍然无法摆脱错误.我的本地实例工作正常.此外,我有一个开发服务器,该网站正在工作,只有在我的生产服务器,我收到此错误.

请帮我找出可能导致此问题的原因.

.net asp.net web-config applicationhost iis-8

66
推荐指数
5
解决办法
15万
查看次数

找不到源,但无法搜索部分或全部事件日志.无法访问的日志:安全性

我收到错误:

找不到源,但无法搜索部分或全部事件日志.无法访问的日志:安全性

当我在代码下运行以捕获Win 2K12 R2服务器IIS 8.5上的错误时

EventLog elog = new EventLog();
EventLog.CreateEventSource("MyApp", "Application");
EventLog.WriteEntry(Source, swError.ToString(), EventLogEntryType.Error);
Run Code Online (Sandbox Code Playgroud)

我已经完全访问HKLM\SYSTEM\CurrentControlSet\services\eventlog但它仍然没有工作.我该怎么做才能修好它?

c# iis event-log iis-8

61
推荐指数
6
解决办法
15万
查看次数