Cara memasang WordPress di VPS Linux dengan Nginx
Panduan ini menyediakan WordPress pada VPS Ubuntu 22.04 atau 24.04 menggunakan tindanan LEMP: Linux, Nginx, MariaDB dan PHP-FPM. Pelayan dengan 2 vCPU dan 2 GB RAM ialah permulaan yang selesa; lihat cara memilih spesifikasi VPS. Anda boleh menggunakan VPS awan dalam beberapa minit dan ikuti langkah-langkah ini. Gantikan example.com dengan domain anda dan tuding rekod DNS A domain tersebut ke IP pelayan terlebih dahulu.
1. Kemas kini pelayan dan buka tembok api
sudo apt update && sudo apt upgrade -y
sudo ufw allow OpenSSH
sudo ufw allow 'Nginx Full'
sudo ufw enableJika anda belum mengamankan SSH, lakukannya dahulu dengan panduan pengerasan SSH.
2. Pasang Nginx, MariaDB dan PHP
sudo apt install -y nginx mariadb-server php-fpm php-mysql php-curl php-gd php-mbstring php-xml php-zip php-intl unzip curl
sudo mysql_secure_installation3. Cipta pangkalan data
sudo mysqlCREATE DATABASE wordpress DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'wpuser'@'localhost' IDENTIFIED BY 'USE_A_LONG_RANDOM_PASSWORD';
GRANT ALL PRIVILEGES ON wordpress.* TO 'wpuser'@'localhost';
FLUSH PRIVILEGES;
EXIT;4. Muat turun WordPress
cd /tmp && curl -O https://wordpress.org/latest.tar.gz
tar xzf latest.tar.gz
sudo mv wordpress /var/www/example.com
sudo chown -R www-data:www-data /var/www/example.com
cd /var/www/example.com && sudo -u www-data cp wp-config-sample.php wp-config.phpSunting wp-config.php: tetapkan DB_NAME, DB_USER dan DB_PASSWORD kepada nilai di atas, dan gantikan kunci pengesahan dengan kunci baharu daripada penjana rasmi di https://api.wordpress.org/secret-key/1.1/salt/.
5. Konfigurasi Nginx
Cipta /etc/nginx/sites-available/example.com:
server {
listen 80;
server_name example.com www.example.com;
root /var/www/example.com;
index index.php;
location / { try_files $uri $uri/ /index.php?$args; }
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php-fpm.sock;
}
location ~ /\.ht { deny all; }
}sudo ln -s /etc/nginx/sites-available/example.com /etc/nginx/sites-enabled/
sudo nginx -t && sudo systemctl reload nginxJika /run/php/php-fpm.sock tidak wujud, gunakan soket berversi, contohnya /run/php/php8.3-fpm.sock.
6. Tambah sijil HTTPS percuma
sudo apt install -y certbot python3-certbot-nginx
sudo certbot --nginx -d example.com -d www.example.comCertbot memasang pemasa yang memperbaharui sijil secara automatik. Semak dengan sudo certbot renew --dry-run.
7. Selesaikan di pelayar dan kukuhkan keselamatan
Buka https://example.com dan lengkapkan pemasang. Kemudian:
- Kemas kini WordPress, tema dan pelanggan secara berkala, dan buang yang tidak digunakan.
- Gunakan kata laluan pentadbir yang kuat dan unik, dan aktifkan log masuk dua faktor.
- Ambil syot kilat atau sandaran sebelum setiap kemas kini utama.
- Pasang pemalam caching untuk mengurangkan beban pada VPS kecil.
Soalan lazim
Versi PHP manakah yang patut saya gunakan?
Gunakan versi yang disertakan dengan keluaran Ubuntu anda, selagi WordPress dan pemalam anda menyokongnya. Semak halaman keperluan rasmi.
Bolehkah saya menjadi hos kepada beberapa laman di satu VPS?
Boleh. Cipta satu blok server Nginx, satu pangkalan data dan satu direktori untuk setiap laman, dan pastikan pelayan mempunyai RAM yang mencukupi untuk semuanya.
Mengapa saya melihat 502 Bad Gateway?
Nginx tidak dapat dihubungi PHP-FPM. Semak sama ada PHP-FPM sedang berjalan dan laluan soket dalam fail Nginx sepadan dengan soket yang wujud.