asp.net程序一般情况下,规则写在根目录web.config配置文件中,主机方面设置脚本映射即可支持
主机管理面板,点击网站基本功能中-脚本映射
根据您程序的需求,可用第一个方式设置,如填写.html 选择您程序所对应.net版本,点击添加即可
.net程序不但要把解析引擎选择ASP.net,还要在你的站点里面进行设置:
在web.config里
<system.web> <httpHandlers> <add path="*.设置的文件类型" verb="*" type="System.Web.UI.PageHandlerFactory" validate="True" /> </httpHandlers> </system.web>
使用此功能可以很容易实现CVB论坛、DiscuzNT论坛等ASP.net程序全面伪静态(即整个网站看起来是HTML静态文件组成)。
如果您觉得如Yahoo的网页后缀为.do这样很有个性化,使用此功能可以轻松实现。
另,通配符应用映射功能也主要用于.net程序的伪静态功能使用,选择对应的.net版本,点击提交即可.
asp.net实现伪静态原理方法:
1、使用我司后台有一个isapi筛选器-开启自定义URL伪静态功能,然后编辑ftp空间的others/discuz/httpd.conf文件,加上您的规则即可,规则需要自己写需编写。比如想将对xxx.htm的请求转到xxx.aspx,规则大体上是
rewriterule ^(.*)/xxx\.htm $1/xxx\.aspx
2.使用.net本身的功能实现伪静态,详情如下
2.1在我司后台点击-脚本映射-文件类型输入.html,类型选择.net,最后选择“提交”
2.2
在你的项目里引用DLL:URLRewriter.dll,然后在web.config里写
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<configSections>
<section name="RewriterConfig" type="URLRewriter.Config.RewriterConfigSerializerSectionHandler, URLRewriter" />
</configSections>
<RewriterConfig>
<Rules>
<!-- Rules for Blog Content Displayer -->
<RewriterRule>
<LookFor>~/read(.[0-9]*)\.html</LookFor>
<SendTo>~/WebForm1.aspx?UserID=$1< ndTo>
</RewriterRule>
</Rules>
</RewriterConfig>
<appSettings>
<add key="dbType" value ="sql"></add>
<add key="data" value="server=.;uid=sa;pwd=sa;database=pubs;Connect Timeout=30;"></add>
</appSettings>
<system.web>
<httpHandlers>
<add verb="*" path="*.aspx" type="URLRewriter.RewriterFactoryHandler, URLRewriter" />
<add verb="*" path="*.html" type="URLRewriter.RewriterFactoryHandler, URLRewriter" />
</httpHandlers>
即可。