http://community.csdn.net/Expert/topic/5500/5500394.xml?temp=.7407648奇怪的问题本来在我的文件系统中测试是OK的
如他生成的地址
http://localhost:1914/UrlRewriteNet2/Defa
他会正确的改写为
http://localhost:1914/UrlRewriteNet2/Default.aspx?name=Defa
但我在IIS中加了网站就不行了
http://localhost:1708/Def
提示:
HTTP 错误 404 - 文件或目录未找到。
Internet 信息服务 (IIS)
我设置了断点发现
他没有去执行
void context_BeginRequest(object sender, EventArgs e)
这里的语句而文件系统的那个就有这是怎么回事
如他生成的地址
http://localhost:1914/UrlRewriteNet2/Defa
他会正确的改写为
http://localhost:1914/UrlRewriteNet2/Default.aspx?name=Defa
但我在IIS中加了网站就不行了
http://localhost:1708/Def
提示:
HTTP 错误 404 - 文件或目录未找到。
Internet 信息服务 (IIS)
我设置了断点发现
他没有去执行
void context_BeginRequest(object sender, EventArgs e)
这里的语句而文件系统的那个就有这是怎么回事
2.将iis中站点属性-》主目录-》配置-》在[通配符应用程序映身]边的上[插入]-》选择c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll应该就可以了
环境:vs2005,iis6
http://localhost:1708/
这是我的网站
Def是我随便输入想让改写为
http://localhost:1708/Default.aspx?name=Def
但出错但原来的虚拟目录又可以
你的所有文件都是在这个根目录下吗?web.config也是吗?
如果不是肯定是不行的.
我程序开始使用的是文件系统
那么
http://localhost:1708/Def.aspx
会改写为http://localhost:1708/Default.aspx?name=Def.aspx
http://localhost:1708/Def
会改写为http://localhost:1708/Default.aspx?name=Def但如果做为虚拟目录或网站的时候
http://localhost:1708/Def.aspx
会改写为http://localhost:1708/Default.aspx?name=Def.aspx
http://localhost:1708/Def
这里就出错提示:
HTTP 错误 404 - 文件或目录未找到。
Internet 信息服务 (IIS)
一个是以本地IIS打开
但文件系统就一切正常
但本地IIS打开的话
def.aspx就可以改写
def 这样就说找不到文件
位置有三个选择
1:文件系统
2:HTTP
3:FTP文件系统的话VS2005会自己虚拟一个IIS给他就不用去配置IIS
后来测试完代码OK后我就在IIS里面建立一个网站把网站的主目录指到这个程序目录用VS2005打开网站 --> 选择刚才创建的网站
运行就出现上面的问题
PS: 这里文件系统 和 IIS网站 都是在同一个目录下面 同样的文件
那个ISAPI筛选器的问题在文件系统中
打入def def.aspx def.aspm def.107 这些都可以改写
但在网站中
打入def def.aspx def.aspm def.107 只有def.aspx可以改写其他的都不可以
是不是ISAPI筛选器 映射问题啊
c:\windows\microsoft.net\framework\v2.0.50727\aspnet_isapi.dll注意,去掉"确认文件是否存在"选项.