2011-05-05 77 views
2

由於可以使用許多編程語言來開發Web應用程序。不看源代碼,有什麼方法可以確定Web應用程序是用Java編寫的?如何判斷頁面是否由JSP生成?

+0

術語「Web應用程序」是相當非特異性。你能澄清嗎?你的意思只是HTML,服務器端應用程序或其他? – 2011-05-05 00:52:25

+0

澄清html和服務器端。 – Raven50 2011-05-05 00:57:40

+0

[使用Java EE的網站]的可能重複(http://stackoverflow.com/questions/2983575/websites-using-java-ee) – BalusC 2011-05-08 11:21:09

回答

0

我不認爲你能找到它,URL可以像.jsp,.jspx,.do,.action,.zul/.zhtml(zk框架)甚至沒有擴展名,如/ servlet/http-頭測試。

一個更多鈔票的方式(不應該依賴於它太)是檢查響應的Server HTTP頭,下面的例子是Tomcat服務器返回的響應:

HTTP/1.0 200 OK 
Server: Apache-Coyote/1.1 
Accept-Ranges: bytes 
ETag: W/"7777-1302152739000" 
Last-Modified: Thu, 07 Apr 2011 05:05:39 GMT 
Content-Type: text/html 
Content-Length: 7777 
Date: Wed, 04 May 2011 19:47:23 GMT 
6

URL上的擴展名可能是.jsp

但是,這並不一定意味着它是一個JavaServer Pages腳本(例如,我可以設置.jsp文件以在服務器上使用PHP進行呈現),也不是每個JSP頁面都具有.jsp擴展名(我可以創建.html如果我喜歡,可以在我的服務器上使用JSP進行渲染,或者甚至隱藏頁面上的擴展)。

1

檢查URL。如果頁面以.jsp結尾,則它是一個Java Server頁面。另外,請檢查頁面請求上的響應標題。可能有一個X-Powered-By頭文件或類似的東西,表示它是由java驅動的。

+0

該擴展是檢查語言最不可靠的方式。現在,MVC應用程序的所有風格都是使用RESTful URL,因此您加載的頁面名稱並不總是出現在URL中。大多數PHP框架如Kohana隱藏了擴展。看看SO的網址,他們使用什麼語言? Spring MVC也是一樣的東西。 – 2011-05-05 01:32:38

+1

當然。但它是一種檢查方式。沒有人真的想要僞造一個Java頁面,因此看到.jsp是找出運行Java的頁面的一個非常可靠的方法,這是OP要求的。 – 2011-05-05 01:35:57

1

如果URL包含擴展名,請查看該擴展名是.jsp,.jsf還是.jspx。可以隱藏它,但是如果它具有其中的一個擴展名,那麼可以肯定它是用Java編寫的。

3

大部分時間都有一些提示,但基本上web服務器提供html標記,所以它可以配置爲隱藏服務器端的東西。因此,不可能有明確的方式告訴網站是用java編寫的。

0

Struts庫喜歡(習慣於)使用.do擴展名。

相關問題