【转】判断某个网站是使用何种ASP\PHP\JSP语言的方法
2012-02-14 18:37
1.一般情况下,判断一个网站是用什么做的,需要观察各个网页的扩展名。 (如:"1.html?id=2"中.html是其扩展名;?后面的是QueryString,即id=2)
普通的静态网页,一般用.html或.htm做拓展名,或根本没有拓展名 动态网页: Server Side Includes 技术,拓展名为.shtml或.html或.htm PHP技术,拓展名为.php JSP技术,拓展名为.jsp或.jsf(JSF技术是JSP技术的拓展) ASP.NET技术,拓展名为.aspx (x 代表extension) ASP技术,拓展名为.asp ColdFusion技术,拓展名为.cfc 2.但是细心的朋友会发现:大网站如:百度、校内、雅虎、GOOGLE、维基百科等,它们的网页没有扩展名,或者只出现.html的静态网页的拓展名 这是因为: 第一,搜索引擎比较喜欢.html,.htm或无扩展名的网页,因为.html, .htm网页一般是静态的,更容易让引擎了解你网页的内容。而动态网页(.jsp,.php.aspx)的内容是根据用户,来输出不同的内容,不容易让引擎吸收具体HTML内容。 第二,隐藏或改变拓展名,这样方便访问者使用,访问者不是程序员,他们不明白什么是.jsp,.php.aspx。第三,防止某些***恶意***(他们不知道该网站用什么技术,就无从下手)。第四,好的URL中的拓展名不应随服务器的改变而变,也就是说好的URL能“以不变应完变”。 所以这类网站,一般用资源转向功能(就向JSP中web.xml定义的名字,把HOME转向到home.jsp,就隐藏了拓展名)。或者用Apache有一个URL Rewriting的Module,PHP网站的拓展名改变,就常用这个URL Rewriting,可以把.php拓展名改成任意名字。 因为大网站可能同时有很多静态网页,也有很多用不同技术的动态网页(可能在不同的服务器:如网易有网易游戏,网易新闻,网易EMAIL)。无论动态静态类网站,都只允许用户看到其输出的HTML(无论是PHP,还是JSP什么的都是导出HTML给用户,用户只能看JavaScript、CSS,但用户完全看不到PHP,Java, C#, ActionScript等代码)。所以,判断此类网站用的什么技术,需要从几方面分析: 方法(1): 查看该网站的开发开放平台。 a.比如:GOOGLE有个Google Code,里面提供GOOGLE各种Search Engine API,还有Google AJAX。那么GOOGLE提供的API全是JAVA的(全无PHP,ASP等),由此可以判断GOOGLE必定就是JSP。 c.再比如:去维基百科,当你点到某些提交信息的按钮时候,IE的状态栏(下方)会马上呈现...php的拓展名。正常在地址栏上看不到.php的原因是,Wikipedia会把你提交信息后,转到另一个.html页面,而不会直接显示那个.php页面。 方法(2): 学习JSP,PHP等相关技术,就能了解用这些技术开发的网站的特点,根据结构就可以判断。 a.比如:校内网,他们在招聘开发者只要求回JSP,Struts(JSP MVC的结构之一)。而且校内大部分开放平台开发的游戏都是JSP写的,由此断定,校内就是用JSP的(其实校内拓展名.do是典型的JSP Struts)。 b.比如:百度,从它贴吧,知道上提交模式,以及百度大部分拓展名都被隐藏(PHP网站经常用apache里的功能来隐藏拓展名)来看,百度就是用PHP的。 方法(3): 在该网站的招聘要求中,看看应聘网站后台程序员,需要会什么语言。 校内网的招聘网页,就是个好例子。 |
转载于:https://blog.51cto.com/3891547/782629