IIS 服务于 ASPX 但不服务于 ASMX
将 ASP.NET Webforms 应用程序部署到 IIS 6.0 64 位服务器。一些关联的 DLL 仅在 32 位中可用,因此我按照这些说明启用了 32 位应用程序。起初我无法查看 ASPX 页面,但我忘记了允许 ASP.NET Web 服务扩展。已排序!
最近的测试表明,请求 ASMX Web 服务文件时会收到 404。从 IIS 日志中,状态代码为:
404 0 2
有人有什么想法吗?我预计这会像所有 404 错误一样愚蠢。
更新 1
不确定这是否相关,但在请求 PNG 文件时收到相同的错误代码。从同一文件夹提供 JPG 或 GIF 没有问题... 什么!!!??? 值得注意的是,如果我将图像的扩展名更改为 JPG,则可以请求它。
更新2
请参阅下面的答案。
Deployed an ASP.NET webforms application to IIS 6.0 64-bit server. Some associated DLLs are only available in 32-bit so I enabled 32-bit applications following these instructions. At first I was not able to view ASPX pages but I had forgotten to Allow the ASP.NET Web Service Extension. Sorted!
Recent testing has shown that a 404 is received when requesting ASMX web service files. From the IIS log the status code is:
404 0 2
Anyone have any ideas? I anticipate this being something silly like all 404s.
UPDATE 1
Not sure if this is related but the same error code is received when requesting PNG files. No problem serving JPG or GIF from the same folder... what!!!??? It is worth noting that if I change the extension of the image to JPG then it can be requested.
UPDATE 2
See answer below.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
我已将连接池从集成更改为“经典”,它开始为我工作
I have changed connection pool to "Classic" from integtrated and it started working for me
您是否确保对于 .asmx 文件类型,处理程序映射到 asp.net dll,并且在 IIS 中未勾选“检查文件是否存在”?
Have you made sure that for .asmx file types, the handler is mapped to asp.net dll and that "check if file exists" is unticked within IIS?
好的找到问题了。
C:\WINDOWS\system32\inetsrv\urlscan\UrlScan.ini 没有在AllowExtensions 列表中指定PNG 和ASMX 扩展名。
我们的 IIS 服务器构建中有一个不错的怪癖!
Okay found the problem.
C:\WINDOWS\system32\inetsrv\urlscan\UrlScan.ini did not have the PNG and ASMX extensions specified in the AllowExtensions list.
A nice quirk in our IIS server build!