There is an interesting project on Github that allows us to get a "universe" of information about the system:
A great advantage is the support we get because the project is tested in numerous platforms:
• Linux 2.6.x
• Freebsd 7.x
• Openbsd 2.8+
• Netbsd
• Dragonfly
• IBM AIX
• HP-UX
• Darwin/OSX
• Win 2000 / Win 2003 / Win XP / Win Vista / Win 7 / Win 8 / Win 8.1
• > PHP 5.2 or later With PCRE, XML, XSL, Mbstring and Simplexml Extension.
Installation
The installation process is relatively simple but lacks two points of attention described below along with the installation notes:
Unzip the source code that can be discharged here to the server root.
In the folder there is a configuration file called phpsysinfo.ini.new
, if the installation being done is a new installation, you should copy this file to phpsysinfo.ini
and edit it:
cp phpsysinfo.ini.new phpsysinfo.ini
Perform the following checks on file php.ini
server:
- Check whether the input
include_path
contains .
Because phpsysinfo requires access to many files on /proc
among others, it is important to have the safe_mode
deactivated:
For this purpose in the archive php.ini
, change the line of safe_mode
for:
safe_mode = Off
Finally, ensure that the PHP extension with the name is installed php-xml
, the same is necessary for the proper functioning of phpsysinfo.
If file changes have been made php.ini
, just restart the server and ready, the fun can begin.
Note: To locate the file php.ini
on the server, from the command line we can use the following command:
find / -name php.ini -print
Demonstration
There is a multi-language online demonstration that demonstrates the numerous potentialities of this project:
http://phpsysinfo.sourceforge.net/phpsysinfo/index.php?disp=dynamic
And much more...
Data format
Data can also be extracted through the API in the format that fits what we want to do:
XML see example
/phpsysinfo/xml.php?plugin=complete
JSON see example
/phpsysinfo/xml.php?plugin=complete&json
JSONP see example
/phpsysinfo/xml.php?plugin=complete&jsonp&callback=getData
Great answer +1
– Guilherme Nascimento