虚拟主机中.net伪静态设置问题
服务器环境:Microsoft-IIS/6.0
程序:Asp.Net
空间商说ISAPI_Rewrite组件已安装
百度、Google了好几天了,问题已久没解决,
以下是百度的结果一:httpd.ini
[ISAPI_Rewrite]
CacheClockRate 3600
RepeatLimit 32
RewriteRule /ceshi.html /ceshi.aspx
上传到虚拟空间中不行,实在是没办法了,求大神指导
百度结果二:
试用UrlRewriter.dll(本地IIS测试正常),上传虚拟空间仍旧不行
求指导,或qq我:2542860760
//我知道可以通过Global.asax实现,但是不太方便,要是实在无人解读就只能用Global.asax
可以考虑上传UrlRewriter.dll 再在web.config 中的httpHandlers节点添加处理,我帮你搜索到了一个DEMO
参考:http://hi.baidu.com/modeemtxiabctzq/item/b6cf771d7d201d3ab8318059
谢谢,试用了一下,不行,我以前这样写在独立的服务器上没问题,在虚拟主机不行
你服务器怎么设置伪静态的?有没有联系空间商进行解决?
空间商说支持伪静态,只要上传的httpd.ini正确就能实现伪静态,但我觉得我写的没什么问题
@钊子: Rewrite.dll 是不是他们提供的?你确定服务器端的dll加载成功了没?
本地测试可以的话,就说明规则没有写错,错在服务器没有正确配置。
谢谢大家的关注,该问题我已自己解决
之前我写的httpd.ini是正确的,错误的是我的httpd.ini编码是utf-8,所以伪静态失败,出现这问题主要是我之前在网上看过一片文章,它文章中说httpd.ini一定要是utf-8,把我给误导了,呵呵。
经测试,虚拟主机的伪静态设置是不分语言的(asp/php/.Net),只分系统,我的是windows 2003
[ISAPI_Rewrite]
# 3600 = 1 hour
CacheClockRate 3600
RepeatLimit 32
RewriteRule /(\w+) /$1.aspx
注意:httpd.ini编码一定要是gb2312