怎麼知道一個網站是由 ASP 、PHP 或者 .NET 開發的?
來源:互聯網
上載者:User
回複內容:
還有一個辦法,看網站找什麼開發語言的工程師。這個事情就像是分辨一個人是男的還是女的一樣,有很多的性別特徵可以協助我們,例如頭髮長短(短髮女士不適合),胸部大小(小學生不適合),衣著(中性服飾不適合),聲音(女低音不適合)。但無論如何,你還是很難分辨出偽娘(故意偽裝成其他技術)。除了扒掉他們的衣服(駭客入侵伺服器)。少些在地址欄的網址尾碼名判斷.net的是.aspx和.asp,java的是.jsp,php的是.php,多些用抓包工具查看IE7以上瀏覽器整合了這個工具,Chrome,Firefox(下載FireBug),快速鍵都是F12,看請求的頭部。很多時候請求的頭部中也沒有X-Powered-By,這種情況下可以看錯誤頁面的資訊判斷,但是大多網站都多錯誤頁面進行了設計,其實就是就算頁面你可看到是用什麼做的但是你也不會知道底層到底什麼語言寫的比如最大的社交網站facebook,頁面時用php但是底層都是用c++等語言寫的。很多時候請求的頭部中也沒有X-Powered-By,這種情況下可以看錯誤頁面的資訊判斷,但是大多網站都多錯誤頁面進行了設計,其實就是就算頁面你可看到是用什麼做的但是你也不會知道底層到底什麼語言寫的比如最大的社交網站facebook,頁面時用php但是底層都是用c++等語言寫的。瀏覽器裝個wappalyzer
http://wappalyzer.com/
相應頁面的指令碼尾碼名是最常見的特徵:.NET 是 xxx.aspx、ASP 是 xxx.asp、PHP 是 xxx.php……
但是理論上 Web 網站完全有可能利用技術手段掩蓋其一切內部技術細節 (若條件允許也應該這麼做) ——「URL 重寫」就是很常見的技術
如果遇到這樣的網站,除了直接問網站運營團隊詢問之外,別無他法
而通常情況下,總能通過一些網站開發人員遺漏的蛛絲馬跡獲得其運行平台的特徵
一般說來,我會首先使用的方式是——「人為製造異常」,誘使伺服器產生
異常資訊或
明顯經過伺服器指令碼解釋過的錯誤結果頁面
比如輸入一個不存在的頁面地址,此地址的頁面尾碼名與各平台預設的指令碼尾碼名對應(見第一行)
當然,一個製作完善的網站網站可能使用「自訂異常處理」並向瀏覽器最終輸出與其他「非指令碼解釋錯誤」(比如 Web 服務器通用 404 錯誤)相似的結果以掩蓋之Chrome 有一個外掛程式叫sniffer,記不清是不是叫這個,但是搜sniffer肯定能找到,裝完之後會在地址欄上顯示網站使用到的一些架構和使用的語言,個人感覺很好用大公司看招聘廣告。
小公司看Response Headers。一個是url的副檔名;
另外一個就是,使用http的抓包工具,看回應標頭;比如ie的httpwatch fiddler, firefox的firebug等等;
---
如果別人網站隱藏的夠好的話,目前我所瞭解的,應該都看不了;
最直觀的方法是看尾碼名,不過這個東西是可以隨意改變的,而且很多人都喜歡改。
----------------
其他辦法:
用 firebug 看網頁 header 資訊中的 server 值,IIS 的話一般是 asp 或者 aspx , apache/ngnix 的話一般是 php , tomcat 一般是 jsp ,等等。
----------------
當然這都不是絕對的,有心想隱藏的話你是看不出來的。從技術角度上講,是可以完全掩蓋的,但從實際角度講,大多數都沒掩蓋。除了少數大型的網站。
方法如上面幾位講的,看主機頭,看伺服器,看錯誤提示方式,甚至看網站掛掉的時候報錯資訊。如果瞭解三種開發語言,甚至可以從頁面原始碼中找到不同的編碼習慣。