Zarządzany hosting WordPressa kasuje za każdą stronę i ukrywa ustawienia. Na własnym VPS-ie masz cały serwer, tyle stron, ile uniesie, i pełną kontrolę nad PHP i cache. Klasyczny stos (Nginx, PHP-FPM, MariaDB) instaluje się na Ubuntu 24.04 w około piętnaście minut.
Zanim zaczniesz: potrzebujesz planu z dedykowanym IP (odwiedzający łączą się z portami 80/443; plany NAT nie przyjmują przychodzącego ruchu WWW) i domeny z rekordem A wskazującym na serwer. Micro-IP za $10 miesięcznie to wygodny dom dla zwykłej strony.
1. Zainstaluj stos
apt update
apt install -y nginx mariadb-server php8.3-fpm php8.3-mysql php8.3-curl \
php8.3-gd php8.3-intl php8.3-mbstring php8.3-xml php8.3-zip
2. Utwórz bazę danych
Na Ubuntu MariaDB wpuszcza roota przez lokalne gniazdo, bez hasła:
mariadb <<'SQL'
CREATE DATABASE wordpress DEFAULT CHARACTER SET utf8mb4;
CREATE USER 'wp'@'localhost' IDENTIFIED BY 'use-a-long-random-password';
GRANT ALL PRIVILEGES ON wordpress.* TO 'wp'@'localhost';
FLUSH PRIVILEGES;
SQL
3. Pobierz WordPressa
cd /tmp && curl -O https://wordpress.org/latest.tar.gz
tar xzf latest.tar.gz
mv wordpress /var/www/example.com
chown -R www-data:www-data /var/www/example.com
4. Skonfiguruj Nginx
cat > /etc/nginx/sites-available/example.com <<'EOF'
server {
listen 80;
server_name example.com www.example.com;
root /var/www/example.com;
index index.php;
client_max_body_size 64M;
location / {
try_files $uri $uri/ /index.php?$args;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php8.3-fpm.sock;
}
location ~ /\.(?!well-known) { deny all; }
}
EOF
ln -s /etc/nginx/sites-available/example.com /etc/nginx/sites-enabled/
rm -f /etc/nginx/sites-enabled/default
nginx -t && systemctl reload nginx
Linia try_files sprawia, że działają przyjazne odnośniki bezpośrednie: to odpowiednik w Nginx reguł .htaccess WordPressa.
Podnieś limit przesyłania w PHP, żeby zgadzał się z client_max_body_size:
sed -i 's/^upload_max_filesize.*/upload_max_filesize = 64M/; s/^post_max_size.*/post_max_size = 64M/' /etc/php/8.3/fpm/php.ini
systemctl restart php8.3-fpm
5. Darmowy HTTPS
apt install -y certbot python3-certbot-nginx
certbot --nginx -d example.com -d www.example.com
Certbot edytuje konfigurację Nginx pod HTTPS i ustawia automatyczne odnawianie.
6. Dokończ w przeglądarce
Otwórz https://example.com, wpisz nazwę bazy (wordpress), użytkownika (wp) i hasło z kroku 2, a potem utwórz konto administratora. Wybierz nazwę administratora inną niż „admin”.
Szybko i bezpiecznie
- Zapora:
ufw allow 22/tcp && ufw allow 'Nginx Full' && ufw enable. - Aktualizacje: włącz w kokpicie automatyczne aktualizacje rdzenia WordPressa, a dla serwera automatyczne aktualizacje bezpieczeństwa.
- Cache: na małej maszynie wtyczka cache stron daje więcej niż jakiekolwiek strojenie serwera.
- Kopie zapasowe: Managed Backups przechowują codzienne punkty przywracania całego serwera ($2/mies., w planach rocznych gratis). Dla przenośnej kopii dodaj
mysqldump wordpress > wp.sqli katalogwp-content. - Pamięć: na serwerach z 1 GB dodaj plik swap 2 GB.
Powiązane
- VPS dla strony internetowej
- Reverse proxy Nginx z HTTPS
- VPS dla Plausible Analytics: statystyki bez ciasteczek dla twojej strony
Komentarze
Brak komentarzy. Bądź pierwszy.