是否有可能从网络配置更改IIS设置

问题描述:

我正在使用url rewriting.net。我正在测试本地主机上的网页,它已成功运行。但是当我将web部署到远程主机时,url重写不起作用。问题是(无法找到资源)。我发现问题。我部署的远程主机IIS配置是(虚拟目录 - >属性 - >主目录 - >应用程序映射 - > .aspx->编辑 - >“检查文件是否存在”被选中)。我需要取消选中它们。但是我部署的主机控制面板没有应用程序映射功能。是否有可能从网络配置更改IIS设置

如何使用web.config取消选中此选项?

可能吗?

你有什么想法吗?

+0

这是在IIS6或IIS7上吗? – Kev 2009-10-21 10:32:30

+0

我不知道。也许IIS7 – ebattulga 2009-10-21 10:39:50

IIS6

如果这是IIS6那么遗憾的是没有办法通过你的ASP.NET web.config文件,以更改脚本映射设置。

您需要找到一个允许通过控制面板进行配置更改的托管服务器,或者要求您现在的托管服务器(很好地)为您更改此设置。

IIS7

如果这是IIS7,那么你需要一个<system.webServer />配置部分添加(如果它不存在的话)你web.config文件并修改处理程序的行为:

<?xml version="1.0" encoding="UTF-8"?> 
<configuration> 
    <system.webServer> 
     <handlers> 
      <!-- remove existing handlers --> 
      <remove name="PageHandlerFactory-ISAPI-2.0" /> 
      <remove name="PageHandlerFactory-Integrated" /> 
      <!-- add back but set resourceType="Unspecified" to prevent 
       checking if file exists --> 
      <add name="PageHandlerFactory-ISAPI-2.0" 
       resourceType="Unspecified" 
       path="*.aspx" 
       verb="GET,HEAD,POST,DEBUG" 
       modules="IsapiModule" 
       scriptProcessor="%windir%\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll" 
       requireAccess="Script" 
       preCondition="classicMode,runtimeVersionv2.0,bitness32" 
       responseBufferLimit="0" /> 
      <add name="PageHandlerFactory-Integrated" 
       resourceType="Unspecified" 
       path="*.aspx" 
       verb="GET,HEAD,POST,DEBUG" 
       type="System.Web.UI.PageHandlerFactory" 
       preCondition="integratedMode" /> 
     </handlers> 
    </system.webServer> 
</configuration> 

这只有在您的托管服务器具有对处理程序映射功能的读/写访问权限的情况下才有效。

我会很惊讶,但如果这是IIS 7和PageHandlerFactory-ISAPI-2.0PageHandlerFactory-Integrated处理程序被配置为resourceType="File"resourceType="Either"。开箱即用,它们被配置为不检查文件和文件夹的存在。

+0

如果主机是IIS7,如何配置? – ebattulga 2009-10-21 10:41:24