Shared hosting service (webspace) checker based on my personal demands.
This shell script runs on your terminal (Linux, Windows/Cygwin, OS X) and checks any FTP/PHP/MySQL hosting service/webspace by uploading PHP code and downloading its output. No SSH access is needed for the hosting service, it runs on your own terminal.
You can use it to
- choose hosting provider
- fix errors in an existing site
- prepare for traffic spikes
- reduce spam
- speed up a website
- domain name (only .hu TLD by parsing domain.hu website)
- website IP, reverse hostname
- nameserver hostnames, IPs, locations, "Domi" domain check
- MX hostname, IP, reverse hostname and its IP
- SPF record
- FTP TLS certificate (lftp with gnutls has a bug)
- webserver name, Apache modules
- keep-alive support
- MIME types (from the HTML5 Boilerplate project)
- HTTP compression
- HTTP Cache-Control header
- concurrent HTTP connections
- PHP version php-ng
- PHP memory limit
- PHP excution time limit
- PHP HTTP functions (for downloading)
- PHP Safe Mode, magic quotes, register globals
- PHP user ID and FTP user ID comparison
- PHP Server API
- PHP extensions
- PHP time zone
- MySQL version
- set up PHP error logging
- server CPU info
- CPU stress test
- disk benchmarks
- MySQL benchmark (TODO)
- total size of WordPress "autoload" options
- and a lot of manual checks (notices, links)
- HTML with clickable links
- a coloured text file for console (use
less -rto view it)
- Bash parsable key-value pairs
- Install dependencies: lftp (curl is not a full-featured fallback) bind9-host whois, optionally
pip install ansi2html.
- Download it:
git clone https://github.com/szepeviktor/hosting-check.git && cd hosting-check.
- Autogenerate config file:
- If you have WordPress installed you don't have to set up database access, wp-config.php will be read instead.
- Start it:
Cygwin on Windows
On Cygwin use apt-cyg and install lftp beside ncurses, wget, bind-utils, util-linux and whois.
apt-cyg install ncurses wget lftp bind-utils util-linux whois
To clone this GitHub repo you will need:
apt-cyg install git libcurl4
steps increments a variable from 1 to 25 million, shuffle shuffles and calculates MD5 sum of a string half million times, AES encrypts an MD5 sum 2500 times. You can find the source in hc-query.php
Company names are hidden intentionally. Times are in seconds.
You are more than welcome to test drive this script and attach the output in an issue.