Web Server Mastery
Deploy professional-grade hosting environments. Supported by our Educational Initiative providing the best free vps for developers.
Install Nginx, MariaDB, and PHP-FPM for maximum website speed.
sudo apt update
sudo apt install nginx mariadb-server php-fpm php-mysql -y
Host multiple domains on a single VPS.
# /etc/nginx/sites-available/yourdomain.com
server {
listen 80;
server_name yourdomain.com;
root /var/www/yourdomain.com;
index index.php index.html;
}
Enable HTTPS for free using Let's Encrypt.
sudo apt install certbot python3-certbot-nginx -y
sudo certbot --nginx -d yourdomain.com
sudo mariadb
CREATE DATABASE my_site;
CREATE USER 'admin'@'localhost' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON my_site.* TO 'admin'@'localhost';
sudo apt install phpmyadmin php-mbstring php-zip -y
Reduce page load times by compressing text files.
# Inside nginx.conf
gzip on;
gzip_types text/plain text/css application/json;
The best lightweight GUI for managing websites on a VPS.
wget -qO- https://fastpanel.direct/install.sh | bash -
curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar
chmod +x wp-cli.phar
sudo mv wp-cli.phar /usr/local/bin/wp
Increase upload limits and memory for your web apps.
upload_max_filesize = 64M
post_max_size = 64M
memory_limit = 256M
sudo apt install redis-server php-redis -y
curl -fsSL https://deb.nodesource.com/setup_20.x | sudo bash -
sudo apt install nodejs -y
sudo npm install pm2@latest -g
pm2 start app.js --name "my-app"
sudo apt install fail2ban -y
mysqldump -u user -p database > backup_$(date +%F).sql
pip install gunicorn
gunicorn --workers 3 app:app
add_header Strict-Transport-Security "max-age=31536000";
add_header X-Frame-Options "SAMEORIGIN";
sudo truncate -s 0 /var/log/nginx/access.log
# In server block
autoindex off;
add_header 'Access-Control-Allow-Origin' '*';
curl -I https://yourdomain.com # Inspect headers