Websites & apps
Web servers, WordPress, PHP, Node.js, SSL and app hosting.
83 guides · page 2 of 5
Event-driven vs process-based web servers: how they handle connections
Why Nginx, LiteSpeed and Caddy handle thousands of connections with little memory while classic Apache needs a process or thread each: the C10k problem, event loops, epoll and what it means for you.
Express.js basics: build and host a small Node.js API
Create a small Express.js API with routes, JSON and static files, make it production-ready behind a proxy, and host it on cPanel or a Linux VPS.
Fix CORS errors: "No 'Access-Control-Allow-Origin' header"
Understand browser CORS errors when a frontend calls an API on another domain, and fix them correctly in the app, Nginx or Apache, including preflight requests and credentials.
Hide the Nginx version and harden the default config
Make Nginx give away less and accept less. Hide the version number, drop requests for unknown hosts, block dotfiles, limit methods and body size, and tighten timeouts.
Host a Node.js app in cPanel with Setup Node.js App
Deploy an Express or other Node.js application on cPanel hosting with Setup Node.js App: choose the Node version, set the startup file, install npm packages and restart.
Host a Python (Flask or Django) app in cPanel with Setup Python App
Run a Flask or Django application on cPanel hosting with Setup Python App: create a virtualenv, configure passenger_wsgi.py, install requirements and restart.
Host a static website on S3-compatible storage with a CDN
Publish a static site (HTML, React or Hugo build) to an S3-compatible bucket, configure index and error pages, add a custom domain through a CDN with HTTPS and automate deploys.
Host multiple websites on one VPS with Nginx server blocks
Run several websites on one Linux VPS by giving each domain its own Nginx server block, its own web root and its own logs, then test and reload safely.
Hotlink protection in Nginx and Apache: stop bandwidth theft
Stop other websites embedding your images and files: how hotlinking works, valid_referers in Nginx, mod_rewrite rules in Apache and .htaccess, allowing search engines and social sites, and testing.
How to add Let's Encrypt SSL to OpenLiteSpeed
Issue a free Let's Encrypt certificate for an OpenLiteSpeed site with certbot's webroot method, add an SSL listener in WebAdmin, redirect HTTP to HTTPS and restart the server automatically after each renewal.
How to add virtual hosts and domains in OpenLiteSpeed
Create a virtual host in OpenLiteSpeed WebAdmin, set its document root, add a port 80 listener, map your domain to it, enable rewrites and apply the change with a graceful restart.
How to change the PHP version in OpenLiteSpeed (LSPHP)
Switch an OpenLiteSpeed server or a single site to a newer PHP version by installing the matching LSPHP packages, pointing the external app at the new binary, adding extensions and editing the right php.ini.
How to find and read Apache access and error logs
Find Apache's access and error logs on Ubuntu, Debian, AlmaLinux and Rocky Linux, set up per-site logs, and pull out errors and top visitors with a few shell commands.
How to install Caddy web server with automatic HTTPS
Install Caddy from its official package repository on Ubuntu, Debian, AlmaLinux or Rocky Linux, write a simple Caddyfile, and let Caddy get and renew Let's Encrypt certificates for you.
How to install OpenLiteSpeed web server on Ubuntu
Install OpenLiteSpeed on Ubuntu or Debian from the official LiteSpeed repository, add LSPHP, set the WebAdmin password, and open ports 8088 and 7080 without exposing the admin panel to everyone.
How to install WordPress on OpenLiteSpeed with LSCache
Install WordPress on OpenLiteSpeed with the right LSPHP extensions, a MariaDB database and a dedicated virtual host, then turn on the LiteSpeed Cache plugin and confirm cache hits in the response headers.
How to migrate a website from Apache to Nginx
Move a site from Apache to Nginx with low downtime - convert virtual hosts and.htaccess rewrites, set up PHP-FPM, reuse SSL certificates, test on a spare port, then switch.
HTTP requests and responses explained: methods, headers and bodies
What is inside an HTTP request and response: the request line, methods like GET and POST, the headers web servers rely on, status lines, bodies, and how to inspect them yourself.
Install and enable PHP extensions on a Linux VPS
Find which PHP extensions are loaded, install missing ones from packages or PECL for the right PHP version, enable them for PHP-FPM and the CLI, and verify.
Install Apache (httpd) on AlmaLinux and Rocky Linux
Install the Apache web server on AlmaLinux or Rocky Linux 8 and 9 with dnf, open HTTP and HTTPS in firewalld, learn the conf.d layout and set SELinux labels for custom web roots.
Other topics
- Getting startedYour first hour with a new server: access, logins and basics.83 guides
- cPanelFiles, databases, email, domains and every cPanel tool, step by step.67 guides
- WHM & resellingWHM, packages, reseller accounts, WHMReseller and running a hosting brand.53 guides
- WordPressInstall, secure, speed up, migrate and fix WordPress sites.49 guides
- Email & webmailMailboxes, webmail, forwarders, spam filters and email delivery.67 guides
- DomainsRegistering, transferring and managing domains and nameservers.27 guides
- SSL certificatesFree AutoSSL, Let's Encrypt, paid certificates and HTTPS.41 guides
- CloudLinuxCloudLinux setup and use: LVE limits, CloudLinux Manager, CageFS and PHP/Node.js selectors.31 guides
- LiteSpeedLiteSpeed Web Server, LSCache and the LiteSpeed Cache plugin: install, settings and tuning.35 guides
- Imunify360Malware scanning, firewall and proactive defence with Imunify360.24 guides
- SoftaculousInstall, update, clone and back up apps with Softaculous.24 guides
- WP SquaredcPanel's WordPress platform: sites, plugins, staging and backups.9 guides
- SitePadBuild and publish websites with the SitePad builder.9 guides
- SitejetDesign, edit and publish sites with the Sitejet builder.9 guides
- WHMResellerAlpha and master resellers with WHMReseller: install, setup and use.12 guides
- VirtFusionInstall, set up and manage VirtFusion: hypervisors, packages, servers and WHMCS integration.28 guides
- VirtualizorManage your VPS with Virtualizor: power, OS reinstall, VNC, IPs and backups.44 guides
- PleskWebsites, email, databases and settings in the Plesk panel.53 guides
- DirectAdminUsers, domains, email and reseller tools in DirectAdmin.41 guides
- WHMCSBilling, automation, products and client management with WHMCS.52 guides
- Control panelscPanel & WHM, Plesk, DirectAdmin and other panels on your VPS.107 guides
- SecurityKeys, passwords, firewalls and keeping a server patched.138 guides
- Networking & DNSIP addresses, reverse DNS, ports and traffic.72 guides
- Websites & appsWeb servers, WordPress, PHP, Node.js, SSL and app hosting.83 guides
- DatabasesMySQL, MariaDB, PostgreSQL, Redis and MongoDB on a VPS.80 guides
- Billing & accountInvoices, renewals, the client area and your account.9 guides
- TroubleshootingWhen something is not working: checks and fixes.127 guides
- Linux VPSSSH, packages, services and everyday Linux administration.265 guides
- Windows VPS & RDPRemote Desktop, Windows Server settings and Admin RDP tips.73 guides
- Docker & DevOpsContainers, Git deploys, automation, monitoring and backups.82 guides
Still stuck?
Ask MdmHost AI for a quick answer, or open a ticket and our team will take a look. We are here 24/7.
