Kaip įdiegti WordPress Linux VPS su Nginx
Šiame vadove WordPress įdiegiamas Ubuntu 22.04 arba 24.04 VPS serveryje su LEMP steku: Linux, Nginx, MariaDB ir PHP-FPM. Patogiai pradėti pakanka serverio su 2 vCPU ir 2 GB RAM; žr. kaip pasirinkti VPS parametrus. Per kelias minutes galite įdiegti debesies VPS ir sekti instrukcijas. Pirmiausia pakeiskite example.com savo domenu ir nukreipkite jo DNS A įrašą į serverio IP.
1. Atnaujinkite serverį ir atidarykite ugniasienę
sudo apt update && sudo apt upgrade -y
sudo ufw allow OpenSSH
sudo ufw allow 'Nginx Full'
sudo ufw enableJei SSH dar nesustiprinote, pirmiausia tai padarykite pagal SSH sustiprinimo vadovą.
2. Įdiekite Nginx, MariaDB ir 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. Sukurkite duomenų bazę
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. Atsisiųskite 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.phpRedaguokite wp-config.php: nustatykite DB_NAME, DB_USER ir DB_PASSWORD reikšmes, kaip nurodyta aukščiau, ir autentifikavimo raktus pakeiskite naujais iš oficialaus generatoriaus adresu https://api.wordpress.org/secret-key/1.1/salt/.
5. Sukonfigūruokite Nginx
Sukurkite failą /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 nginxJei /run/php/php-fpm.sock neegzistuoja, naudokite versijos numerį turintį socket failą, pavyzdžiui, /run/php/php8.3-fpm.sock.
6. Įdiekite nemokamą HTTPS sertifikatą
sudo apt install -y certbot python3-certbot-nginx
sudo certbot --nginx -d example.com -d www.example.comCertbot įdiegia laikmatį, kuris sertifikatą atnaujina automatiškai. Jį patikrinkite komanda sudo certbot renew --dry-run.
7. Baikite diegimą naršyklėje ir sustiprinkite saugumą
Atidarykite https://example.com ir užbaikite diegimo vedlį. Tada:
- Nuolat atnaujinkite WordPress, temas ir papildinius, o nenaudojamus pašalinkite.
- Naudokite stiprius, unikalius administratoriaus slaptažodžius ir įjunkite dviejų veiksnių prisijungimą.
- Prieš kiekvieną didesnį atnaujinimą sukurkite momentinę kopiją arba atsarginę kopiją.
- Įdiekite talpyklos (caching) papildinį, kad sumažintumėte apkrovą mažam VPS.
Dažniausiai užduodami klausimai
Kokią PHP versiją turėčiau naudoti?
Naudokite versiją, kuri pateikiama su jūsų Ubuntu laidą, tiek, kiek ją palaiko WordPress ir jūsų papildiniai. Patikrinkite oficialiame reikalavimų puslapyje.
Ar viename VPS galiu talpinti kelias svetaines?
Taip. Sukurkite po vieną Nginx server bloką, vieną duomenų bazę ir vieną katalogą kiekvienai svetainei bei skirkite serveriui pakankamai RAM.
Kodėl matau 502 Bad Gateway?
Nginx negali pasiekti PHP-FPM. Patikrinkite, ar PHP-FPM veikia ir ar socket kelias Nginx faile atitinka egzistuojantį socket failą.