Url重写,本地正常,IIS中404

zhanglong_longlong 2014-09-17 10:37:47
以下是web.config,注:IIS中aspnet_isapi.dll已设置。
<?xml version="1.0" encoding="utf-8"?>

<!--
有关如何配置 ASP.NET 应用程序的详细消息,请访问
http://go.microsoft.com/fwlink/?LinkId=169433
-->

<configuration>
<configSections>
<section name="urlrewritingnet" type="UrlRewritingNet.Configuration.UrlRewriteSection, UrlRewritingNet.UrlRewriter" requirePermission="false" />
<section name="unity" type="Microsoft.Practices.Unity.Configuration.UnityConfigurationSection, Microsoft.Practices.Unity.Configuration" requirePermission="false" />
</configSections>
<urlrewritingnet rewriteOnlyVirtualUrls="true" contextItemsPrefix="QueryString" defaultPage="" defaultProvider="RegEx" xmlns="http://www.urlrewriting.net/schemas/config/2006/07">
<rewrites>
<add name="RewritePhoto" virtualUrl="^~/index_(\d+).html" rewriteUrlParameter="ExcludeFromClientQueryString" destinationUrl="~/WebForm4.aspx?ID=$1" ignoreCase="true" />
<add name="RewritePhoto2" virtualUrl="^~/AAAA/index_(\d+)_(.*).html" rewriteUrlParameter="ExcludeFromClientQueryString" destinationUrl="~/AAAA/WebForm1.aspx?ID=$1&arriveAirport=$2" ignoreCase="true" />
</rewrites>
</urlrewritingnet>
<unity>
<typeAliases>
<typeAlias alias="singleton" type="Microsoft.Practices.Unity.ContainerControlledLifetimeManager, Microsoft.Practices.Unity" />
</typeAliases>
<containers>
<container>
<types>
<type type="Service.IGameService,Service" mapTo="DataAccess.GameService,DataAccess">
<lifetime type="singleton" />
</type>
</types>
</container>
</containers>
</unity>
<system.web>
<compilation debug="true" targetFramework="4.0" />
<httpHandlers>
<remove verb="*" path="*.asmx" />
<remove verb="*" path="*.json" />
<add verb="*" path="*.asmx" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
<add verb="*" path="*_AppService.axd" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
<add verb="GET,HEAD" path="ScriptResource.axd" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" validate="false" />
<add verb="*" path="*.json" type="PwVisual.Web.JsonHandler, PwVisual.Web" validate="false" />
</httpHandlers>
<httpModules>
<add name="ScriptModule" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
<add name="UrlRewriteModule" type="UrlRewritingNet.Web.UrlRewriteModule, UrlRewritingNet.UrlRewriter" />
</httpModules>
</system.web>
<system.webServer>
<validation validateIntegratedModeConfiguration="false" />
<modules runAllManagedModulesForAllRequests="true">
<add name="UrlRewriteModule" preCondition="managedHandler" type="UrlRewritingNet.Web.UrlRewriteModule, UrlRewritingNet.UrlRewriter" />
</modules>
<defaultDocument>
<files>
<clear />
<add value="index.htm" />
<add value="Default.htm" />
<add value="Default.asp" />
<add value="index.html" />
<add value="iisstart.htm" />
<add value="default.aspx" />
</files>
</defaultDocument>
<handlers>
<add name="URLRewriter" path="*.html" verb="*" modules="IsapiModule" scriptProcessor="C:\Windows\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll" resourceType="Unspecified" requireAccess="Script" preCondition="classicMode,runtimeVersionv4.0,bitness32" />
</handlers>
</system.webServer>
</configuration>
...全文
159 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
mc_dv 2014-09-17
  • 打赏
  • 举报
回复
重写出来的路径是相对路径还是绝对路径 .
qzyf1992 2014-09-17
  • 打赏
  • 举报
回复
引用 3 楼 zhanglong_longlong 的回复:
[quote=引用 2 楼 qzyf1992 的回复:] 印象中老版本是这样配置的

   <httpModules>
         <remove name="父目录中配置的httpModule名" />
       </httpModules>
没看明白[/quote] vs2012
引用 3 楼 zhanglong_longlong 的回复:
[quote=引用 2 楼 qzyf1992 的回复:] 印象中老版本是这样配置的

   <httpModules>
         <remove name="父目录中配置的httpModule名" />
       </httpModules>
没看明白[/quote] 我也忘记老版本是如何配置了 如果是这个问题,你把iis的应用程序池提升到你web服务用的.net framework版本 应该就能解决问题
卧_槽 2014-09-17
  • 打赏
  • 举报
回复
IIS的URL重写模块 装了么?
zhanglong_longlong 2014-09-17
  • 打赏
  • 举报
回复
引用 4 楼 qxyywy 的回复:
我记得服务器段IIS中也去设置一个允许映射 以前给一个客户弄过
已经设置了映射
qxyywy 2014-09-17
  • 打赏
  • 举报
回复
我记得服务器段IIS中也去设置一个允许映射 以前给一个客户弄过
zhanglong_longlong 2014-09-17
  • 打赏
  • 举报
回复
引用 2 楼 qzyf1992 的回复:
印象中老版本是这样配置的

   <httpModules>
         <remove name="父目录中配置的httpModule名" />
       </httpModules>
没看明白
qzyf1992 2014-09-17
  • 打赏
  • 举报
回复
印象中老版本是这样配置的

   <httpModules>
         <remove name="父目录中配置的httpModule名" />
       </httpModules>
qzyf1992 2014-09-17
  • 打赏
  • 举报
回复
估计跟iis的应用程序池版本有关系 试着换老版本那种module在webconfig配置的写法试试。 framework 4.0和2.0module在webconfig里的配置方法是不一样的
爱机宝应用市场CMS路由重写说明-apache 1,首先需要加载httpd.conf配置文件的mod_rewrite.so模块 2,AllowOverride None 将None改为 All 3,确保程序的config.php的URL_MODEL参数设置为2 爱机宝应用市场CMS路由重写说明-iis 1,如果安装检测您的环境没有rewrite.so那么首先需要根据您的iis版本下载对应的rewrite.so模块 2,然后把模块加载到环境去重启服务器 3,确保程序的config.php的URL_MODEL参数设置为2 爱机宝应用市场CMS前台访问说明 1.访问前台如果数据库设置了密码也需要到project/Home/Conf/config.php文件修改数据库密码等相关配置 爱机宝应用市场CMS后台操作说明 1.安装完成后需要到bsrt_admin/Home/Conf/config.php文件修改数据库的一些相关配置 2.应用管理栏目:存放的是您本地的一些应用 3.添加新应用栏目:您可以自己添加您本地的一些应用还可以添加我们为您提供的每天都在更新的应用,选需要添加的的应用数据库然后确认添加即可 4.添加新游戏栏目:操作方法和添加新应用相同. 5.评论管理栏目:管理用户对您的应用的相关评论。 6.图片本地化栏目:可以远程将我们服务器上的图片下载到本地,填写图片ID号即可 7.后台账号栏目:启用,禁用登录账号 8.数据库备份:数据库备份还原 9.赚钱联盟栏目:您可以到360手游合作平台注册推广账号,注册完成您会获得一个渠道号和密钥,那么当下载应用的时候连接就是您自己的,不然下载地址要么是我们服务器提供的或者是360那边提供的下载地址,如果这样您的网站在下载应用的时候就得量统计 10.清理缓存栏目:清理前台台的缓存文件,可以在程序配置文件设置不生成缓存文件(这样会拖慢您的访问速度,不建议关闭缓存生成) 11.模板管理栏目:在线编辑您的模板文件 12.友情链接栏目:管理您的首页的友情链接模块 13.新闻管理栏目:管理您的新闻,需要注意的是要是您添加的是自己本地的新闻图片,需要到模板修改对应的地址 14.专题管理栏目:操作基本和新闻管理栏目相同 15.广告设置栏目:这里管理您首页的广告图片,需要注意的是如果添加首页大的轮播图需要自己处理好轮播图的选图片 爱机宝应用市场CMS前台页面 爱机宝应用市场CMS后台管理 后台路径:域名/bsrt_admin.php/Login/index 用户名与密码:admin(安装时可设置) 后台页面 相关阅读 同类推荐:站长常用源码
IIS 7.0上的ASP.NET本身也从以ISAPI的实现形式变成直接接入IIS7管道的模块: 这带来诸多好处: 1) 你现在可以对服务器的所有请求(例如, .htm,.php,.jsp文件)使用ASP.NET表单认证,成员/角色,以及任何其他特性。   2) 你现在可以轻松地重写任何web请求的URL或者以种种有趣的方式对请求做改动。   3) 你可以使用VB或C#替换或扩展任何现有的IIS特性(例如,你可以除去内置的目录清单模块,接入你自己的模块)。   这确实给.NET开发人员带来了无穷多的扩展性机会。   IIS 7.0 七大新特性:   1)模块化的网络核心允许用户增加和删除特定的功能。如果要使用服务统计构件,仅需几个模块(不包括ISAPI)。   2)一个统一标准的HTTP管道,它对应于本地管理方面的应用程序。用户可以对经典的ASP网页使用基于窗体的认证系统。   3)用户可以建立自己的IHttpModule以及IHttpHandlers,并且把它们插入到统一的管道。   4)新款分布式的XML设置系统,它利用了ASP.NET的设置系统的优点。   5)改善的诊断和问题解答机制,包括了新Runtime状态以及跟踪功能。   6)新型可扩展,面向任务的管理员用户界面。 7)总体来讲,IIS7.0支持之前所有的功能,并且有很多相关的扩展功能。同时,在IIS 7.0里支持PHP5,FTP方面,选择IIS7.0的主机扩展到了50个FTP。   总而言之,IIS 7将为Web管理员以及Web爱好者提供更加丰富,更加易用的管理工具。在新的IIS7,无论是管理方面还是安全方面都得到了全新的设计,而从用户群的角度上讲,利用IIS7, 个人用户可以更快,更简便的建立自己的站点,而企业用户则可以更加全面,更加安全的维护和管理自己的WEB环境。随着Windows Server2008的日益临近,相信有关IIS7管理的相关介绍也会越来越多,究竟新版本有没有带给我们实质的变革,还是只是一个IIS服务器功能的增强,让我们拭目以待吧。 本信息来源于www.xqmv.com,原文地址:http://www.xqmv.com/Article.aspx?id=319

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧