一、在IIS里设置如下:即是指,当访问网站根路径存在时,和访问不存在的路径时,都使用网站的根下的默认程序(index.aspx)来处理。二、在Global.asax.cs中:protected void Application_BeginRequest(Object sender, EventArgs e)
{
Response.Write(Request.Url.AbsoluteUri);
}
二、访问结果显示:
1、当使用“http://127.0.0.1/?kw=党民国,你好啊!”访问时,页面显示:
http://127.0.0.1:88/index.aspx?kw=%E5%85%9A%E6%B0%91%E5%9B%BD,%E4%BD%A0%E5%A5%BD%E5%95%8A%EF%BC%81
2、当使用“http://127.0.0.1/test/?kw=党民国,你好啊!”(test文件夹并不存在)访问时,页面却显示:
http://127.0.0.1:88/index.aspx?404;http://127.0.0.1:88/test/?kw=%CE%BC3??1%C3%BA,??o?%C2%B0?%EF%BF%A1?三、需要解决的问题:
1、如二所述,相同的处理程序和编码,为什么在“根下”访问结果和在“不存在的文件夹下”访问的结果(即kw=的值)为什么不一样?
2、我在web.config中设置编码方式是GB2312(<globalization requestEncoding="gb2312" responseEncoding="gb2312" />),显示结果应该是:kw=%B5%B3%C3%F1%B9%FA%2C%C4%E3%BA%C3%B0%A1%A3%A1。但是:
    (1)通过google(UTF-8编码)验证:http://www.google.cn/search?complete=1&hl=zh-CN&q=%E5%85%9A%E6%B0%91%E5%9B%BD%2C%E4%BD%A0%E5%A5%BD%E5%95%8A%EF%BC%81
    (2)通过baidu(GB2312编码)验证:http://www.baidu.com/s?wd=%B5%B3%C3%F1%B9%FA%2C%C4%E3%BA%C3%B0%A1%A3%A1&cl=3
    ····这里证明了我的网页编码方式是UTF-8,为什么我在web.config中的设置无效?····四、我的开发环境是:vs.net 2003,运行环境是:ASP.NET v2.0.50727。