Jinsi ya kusakinisha WordPress kwenye VPS ya Linux na Nginx
Mwongozo huu unaweka WordPress kwenye VPS ya Ubuntu 22.04 au 24.04 kwa kutumia mfumo wa LEMP: Linux, Nginx, MariaDB na PHP-FPM. Seva yenye vCPU 2 na RAM ya GB 2 ni mwanzo mzuri; angalia jinsi ya kuchagua vipimo vya VPS. Unaweza kuweka cloud VPS kwa dakika chache na kufuata hatua hizi. Badilisha example.com kwa jina lako la kikoa na kwanza elekeza rekodi yake ya DNS A kwenye IP ya seva.
1. Sasisha seva na ufungue firewall
sudo apt update && sudo apt upgrade -y
sudo ufw allow OpenSSH
sudo ufw allow 'Nginx Full'
sudo ufw enableIkiwa bado hujalinda SSH, fanya hivyo kwanza kwa kutumia mwongozo wa kuimarisha SSH.
2. Sakinisha Nginx, MariaDB na 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. Unda hifadhidata
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. Pakua 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.phpHariri wp-config.php: weka DB_NAME, DB_USER na DB_PASSWORD kwa thamani zilizo hapo juu, kisha badilisha funguo za uthibitishaji kwa mpya kutoka kwa kizalishaji rasmi kilichopo https://api.wordpress.org/secret-key/1.1/salt/.
5. Sanidi Nginx
Unda /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 nginxIkiwa /run/php/php-fpm.sock haipo, tumia soketi yenye toleo, kwa mfano /run/php/php8.3-fpm.sock.
6. Ongeza cheti cha HTTPS bure
sudo apt install -y certbot python3-certbot-nginx
sudo certbot --nginx -d example.com -d www.example.comCertbot husakinisha kipima muda kinachosasisha cheti kiotomatiki. Kikague kwa sudo certbot renew --dry-run.
7. Maliza kwenye kivinjari na uimarishe
Fungua https://example.com kisha ukamilishe kisakinishi. Kisha:
- Endelea kusasisha WordPress, mandhari (themes) na programu-jalizi (plugins), na uondoe zile usizotumia.
- Tumia nywila zenye nguvu na za kipekee za msimamizi, na uwashe uthibitishaji wa hatua mbili wakati wa kuingia.
- Chukua snapshot au backup kabla ya kila sasisho kubwa.
- Sakinisha programu-jalizi ya caching ili kupunguza mzigo kwenye VPS ndogo.
Maswali yanayoulizwa mara kwa mara
Ni toleo gani la PHP ninapaswa kutumia?
Tumia toleo linalokuja na toleo lako la Ubuntu, mradi WordPress na programu-jalizi zako zinaliunga mkono. Angalia ukurasa rasmi wa mahitaji.
Je, ninaweza kuendesha tovuti kadhaa kwenye VPS moja?
Ndiyo. Unda server block moja ya Nginx, hifadhidata moja na saraka moja kwa kila tovuti, kisha mpe seva RAM ya kutosha kwa zote.
Kwa nini ninaona 502 Bad Gateway?
Nginx haiwezi kufikia PHP-FPM. Hakikisha PHP-FPM inaendesha na kwamba njia ya soketi kwenye faili ya Nginx inalingana na soketi iliyopo.