1

所以我正在重写一个 ASP.NET 3.5 网站的应用程序。有一个包含 ASHX 处理程序的文件夹。这些处理程序是由外部应用程序调用的 API。我的解决方案是在新的 MVC 站点下将此 API 文件夹作为 3.5 应用程序运行。URL 保持不变,一切都会很好地工作。

在 MVC 应用程序中,我在 web.config 中启用了表单身份验证。IgnoreRoute Global.asax.cs 中的 API 文件夹。我为 .NET 2.0 创建了一个新的应用程序池,并将其分配给在 API 文件夹上创建的新应用程序。

从服务器访问处理程序有效,我得到了我的自定义错误,因为我没有指定我的凭据。从我的机器访问处理程序,我得到您无权查看此目录或页面。我在 API 文件夹中创建了一个 default.aspx 页面并显示该页面。所以这是一个处理程序(ASHX)问题。

4

2 回答 2

1

我最终创建了一个针对 .NET 3.5 的新网站解决方案,并且只有一个返回 Hello World 的处理程序 Test.ashx。将 IIS 配置为对 API 文件夹使用不同的应用程序池(经典模式)并且它可以工作。所以我添加了我现有的处理程序并且它起作用了。我猜是 web.config 文件中的某些东西导致了这个问题。

于 2012-07-31T20:25:26.390 回答
0

尝试转到 IIS 并在您的网站下 -> 处理程序映射。检查 .ashx 是否被映射。

于 2012-07-24T21:01:06.280 回答