java 转向网页,X@X.X域名转向的实现

www.chinacs.net中文C#技术站当你看到csdn@csdn.com时,你肯定把这当作C#

www.chinacs.net 中文C#技术站

当你看到csdn@csdn.com时,你肯定把这当作电子邮件地址,其实这个不一定是邮件地址,有可能是域名。现在有越来越多的人开始使用这个形式的地址了。初看起来,你不要以为这个是一个什么非常了不起的技术,其实是一个非常简单的东西。

我们如果要在IE中访问FTP,会用到ftp://user:pwd@pft.csdn.com这样的形式,其实csdn@csdn.com这种形式就是从上面那个衍生出来的,当我们用csdn@csdn.com这样的形式访问时,IE会自动解析csdn.com得到IP,并在这个IP下调用默认的文档,假如是default.html,此时如果我们用以下的语句:

this.location = "gol.aspx?user=" + this.location.href;

就把csdn@csdn.com作为user的值提交到了gol.aspx

此时我们可以用一下的gol.aspx来实现域名转向

void Page_Load(Object src,EventArgs e)

{

string url=Request.QueryString["user"].ToString();//获取user的值,即在浏览器中的地址

url=url.ToLower();//将这个地址转成小写形式

url=url.Replace("http://","");//如果地址前带http://,则除掉这个前缀

string[] prefix=url.Split('@');  //以@拆分这个地址,

if(prefix[0]=="")如果没有采用@类型的域名,则转到默认文档.

{

Response.Redirect("ip.aspx?ip="+Request.ServerVariables["REMOTE_ADDR"]);

return;

}

try//连接SQL 数据库,从数据库提取信息,实现域名转向,并增加访问计数。

{

SqlConnection conn=new SqlConnection("server=127.0.0.1;uid=sa;pwd=qi4c;database=qi4c");

conn.Open();

SqlCommand comm=new SqlCommand("select location,click from redr where prefix='"+prefix[0]+"'",conn);

SqlDataReader dr=comm.ExecuteReader();

if(dr.Read())

{

string click=(dr.GetInt32(1)+1).ToString();

string redirecturl=dr.GetString(0).ToString();

dr.Close();

comm.CommandText="Update redr set click="+click+"where prefix='"+prefix[0]+"'";

comm.ExecuteNonQuery();

Response.Redirect(redirecturl);

}

else

{

dr.Close();

Response.Redirect("ip.aspx");

}

conn.Close();

}

catch(Exception exec)

{

Response.Redirect("ip.aspx?ip="+Request.ServerVariables["REMOTE_ADDR"]);

}

}

数据库的结构

prefix          char         10

location       char         50

click            int           4

本文由来源 21aspnet,由 javajgs_com 整理编辑,其版权均为 21aspnet 所有,文章内容系作者个人观点,不代表 Java架构师必看 对观点赞同或支持。如需转载,请注明文章来源。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值