May 23, 2026Guides
How to Install PHP on VPS (Ubuntu and CentOS)
Install PHP 8.x with common extensions for WordPress, Laravel, and other web apps on your server.

Most websites need PHP. This guide installs PHP 8.x and common extensions on Ubuntu and CentOS-based Hiddence servers.
Ubuntu / Debian
bash
sudo apt update
sudo apt install -y software-properties-common
sudo add-apt-repository ppa:ondrej/php -y
sudo apt update
sudo apt install -y php8.2 php8.2-fpm php8.2-cli php8.2-mysql php8.2-curl php8.2-gd php8.2-mbstring php8.2-xml php8.2-zip php8.2-redis
sudo systemctl enable php8.2-fpm
sudo systemctl start php8.2-fpm
php -vCentOS / RHEL / Alma / Rocky
bash
sudo yum install -y epel-release
sudo yum install -y https://rpms.remirepo.net/enterprise/remi-release-9.rpm
sudo yum module reset php -y
sudo yum module enable php:remi-8.2 -y
sudo yum install -y php php-fpm php-mysqlnd php-gd php-mbstring php-xml php-zip php-redis
sudo systemctl enable php-fpm
sudo systemctl start php-fpm
php -vInstall extra extensions
Add extensions as your application requires:
bash
# Ubuntu example:
sudo apt install -y php8.2-intl php8.2-bcmath php8.2-imagick
# Then restart PHP-FPM:
sudo systemctl restart php8.2-fpmVerify PHP-FPM with Nginx
bash
sudo nano /etc/nginx/sites-available/default
# Inside server block:
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php/php8.2-fpm.sock;
}
sudo nginx -t && sudo systemctl reload nginxTips
- Match PHP version to your CMS/framework requirements
- Set memory_limit and upload_max_filesize in php.ini for your app
- Use php-fpm pool tuning for high-traffic sites
- Never expose phpinfo() in production
- Keep PHP updated for security patches