打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
.aspx地址伪静态为html的方法(C#+ASP.NET)

个人觉得使用Rewrite、正则表达式比较合适PHP,因为PHP使用的就是.html,而ASP.NET的是.aspx。

第一步:映射扩展名,html映射aspx,使用让NET接管html的解析。

打开IIS--网站属性--主目录

 
 

点“配置”

 
 

点击“添加”

可执行文件是:C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll

最主要的是“默认文件是否存在”的不要选。

 
 

确定后,NET就接管解析html了。

第二步:添加Global.cs文件,写上伪静态地址规则。

如:http://www.ms178.cn/img.aspx?id=a790  伪静态为: http://www.ms178.cn/img/a790.html



protected void Application_BeginRequest(Object sender, EventArgs e)

{

string CurUrl = HttpContext.Current.Request.RawUrl;

if (CurUrl.IndexOf(".html") != -1)

{

//int pos = CurUrl.IndexOf("/")+ 1; //--服务器上用这个

int pos = CurUrl.IndexOf("s/") + 2; //--本地版本

int pos1 = CurUrl.IndexOf("/", pos);

string churl = CurUrl.Substring(pos, pos1 - pos);

HttpContext.Current.RewritePath("~/" + churl + ".aspx");

return;

}

}

第三步:在对应的aspx文件写对应的参数接收代码。

如上在img.aspx.cs上写代码:

protected void Page_Load(object sender, EventArgs e)

{

string CurUrl = HttpContext.Current.Request.RawUrl;

cGstcGstr = new Gstr();

string aid = cGstr.getMidstr(CurUrl, "img/", ".html");

}

这样aid就得到上面的a790了。

其中cGstr.getMidstr的函数是截取2个字符串之间的字符。

附代码如下:

public string getMidstr(string content, string lstr, string rstr) //--获取内容,

{

if (content == null) return "";

int pos, pos1;

string tstr = "";

pos = content.IndexOf(lstr);

if (pos == -1) return "";

pos = pos + lstr.Length;

pos1 = content.IndexOf(rstr, pos);

if (pos1 == -1) return "";

if (pos1 < pos) return "";

tstr = content.Substring(pos, pos1 - pos);

return tstr;

}
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
ASP.NET中将.aspx页面转化成静态Html页面的方法
ASP.NET 路由实现页面静态化
asp.net 用伪静态
aspx不显示ViewState的实例
在线生成图片的网址
JavaScript and Frames, Part I: Forcing Frames
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服