用PHPINFO來實現PHP的配置統計過程
大家都知道用于顯示服務器配置的phpinfo(),是一個用于安裝新服務器后非常有用的工具,并且是一個可以跟各個管理員們進行交流的非常有用的工具。
當然在使用之后,通常是移除掉它或者只是提供給少量人使用,的確,phpinfo自身也許非常的危險。有些時候他甚至會有XSS注入的缺陷。甚至當你覺得安全的時候,phpinfo也將把你的一些配置構造公開,所以推薦把它遠離。
非常可惜得是,現在把phpinfo頁作為web服務器的一部分是一個非常常見的事情,而且搜索引擎也常常去拾取它的信息,有成千上萬的phpinfo()葉面在yahoo等各種搜索引擎上。只需要在你的yahoo上搜索'phpinfo()' 'GoogleBot' and 'Zend Scripting Language Engine'就可以看到他們。看Ilia's的文章—如何保護你的phpinfo() Reliably locating phpinfo (18 visites))。
當然在另一個方面,能夠在世界范圍內收集如此多的phpinfo信息對于我們來說是一個相當巨大的財富。一旦我們獲得了URL地址,我們只需要下載phpinfo()文件,然后我們分析它并把它儲存為相應的數據,這些就是我在做的事情。
我在intrenet上獲得了12000個phpinfo()。在這里引用了其中有用處的11048個。11000在百萬的php站點的數量中只能算是滄海一粟。但是與google等搜索引擎中的數量來比,也占到了1%,所以也能代表一些意見。
我們能從這些資料庫中獲得多少信息呢?這只是一個有趣的普通的聯系么?許多人認為在搜索引擎中獲得phpinfo信息并不是太容易的事情,甚至需要一定的運氣。這種確定并不是一件好事情。事實上,讓我來教你如何搜索你的網站的phpinfo頁,使用這種格式'phpinfo site:yoursite.com' 然后你會感到非常的吃驚。
另一方面11000是一個相當大的數量。在收集了這些phpinfo信息之后,我用來比較了各種php版本的分布和數量信息。其中的87%相當好。總體而言,這些信息相當有代表性。
好了,在結束上面如此長的介紹后,從這些資料中,我們獲得了一些有趣的數據。最后,phpinfo包含了許多的信息。我把它們作為模版提取了一些交叉的內容。
結尾
配置數據總是那么得出乎意料或意料之中。讀取完這些數據后,我們發現仍然有許多是需要進行指導的地方。
通常來說,很多的配置都是非常通用的數值。我們發覺用Php開發的人中,很多人都沒有詳細的了解過php.ini文件的內容,并且了解它……