Konfiguracja domeny
Konfiguracja domeny dla VPS
Kompleksowy przewodnik konfiguracji domeny dla serwera VPS w Sunohost, w tym konfiguracja DNS, SSL i reverse proxy.
Spis treści
- Wymagania wstępne
- Konfiguracja DNS
- Konfiguracja serwera WWW
- Certyfikaty SSL
- Subdomeny i przekierowania
- Rozwiązywanie problemów
Wymagania wstępne
- Zarejestrowana domena
- Aktywny serwer VPS w Sunohost
- Dostęp SSH do serwera
- Podstawowa znajomość linii komend Linux
Konfiguracja DNS
1. Podstawowe rekordy DNS
Dodaj następujące rekordy w panelu swojego dostawcy domeny:
Dla głównej domeny:
Typ: A
Nazwa: @
Wartość: adres ip
TTL: 3600Dla www:
Typ: A
Nazwa: www
Wartość: adres ip
TTL: 36002. Dodatkowe rekordy (opcjonalnie)
Dla poczty:
Typ: MX
Nazwa: @
Priorytet: 10
Wartość: mail.twoja-domena.pl
TTL: 3600
Typ: A
Nazwa: mail
Wartość: adres ip
TTL: 3600Dla subdomen:
Typ: A
Nazwa: blog
Wartość: adres ip
TTL: 3600Konfiguracja serwera WWW
1. Nginx (zalecane)
Podstawowa konfiguracja:
server {
listen 80;
listen [::]:80;
server_name twoja-domena.pl www.twoja-domena.pl;
root /var/www/twoja-domena.pl/public_html;
index index.html index.php;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php/php8.1-fpm.sock;
}
location ~ /\.ht {
deny all;
}
}Konfiguracja z SSL:
server {
listen 443 ssl http2;
listen [::]:443 ssl http2;
server_name twoja-domena.pl www.twoja-domena.pl;
ssl_certificate /etc/letsencrypt/live/twoja-domena.pl/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/twoja-domena.pl/privkey.pem;
ssl_protocols TLSv1.2 TLSv1.3;
# Reszta konfiguracji jak wyżej
}
server {
listen 80;
listen [::]:80;
server_name twoja-domena.pl www.twoja-domena.pl;
return 301 https://$server_name$request_uri;
}2. Apache (alternatywnie)
Podstawowa konfiguracja:
<VirtualHost *:80>
ServerName twoja-domena.pl
ServerAlias www.twoja-domena.pl
DocumentRoot /var/www/twoja-domena.pl/public_html
<Directory /var/www/twoja-domena.pl/public_html>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
ErrorLog ${APACHE_LOG_DIR}/twoja-domena.pl-error.log
CustomLog ${APACHE_LOG_DIR}/twoja-domena.pl-access.log combined
</VirtualHost>Certyfikaty SSL
1. Instalacja Certbot
# Dla Ubuntu/Debian
apt update
apt install certbot python3-certbot-nginx
# Dla CentOS
yum install certbot python3-certbot-nginx2. Generowanie certyfikatu
# Dla Nginx
certbot --nginx -d twoja-domena.pl -d www.twoja-domena.pl
# Dla Apache
certbot --apache -d twoja-domena.pl -d www.twoja-domena.pl3. Automatyczne odnawianie
# Sprawdź konfigurację
certbot renew --dry-run
# Dodaj do crona
echo "0 0,12 * * * root python -c 'import random; import time; time.sleep(random.random() * 3600)' && certbot renew -q" | sudo tee -a /etc/crontab > /dev/nullSubdomeny i przekierowania
1. Konfiguracja subdomen
Dla każdej subdomeny utwórz osobny blok server w Nginx:
server {
listen 443 ssl http2;
server_name blog.twoja-domena.pl;
ssl_certificate /etc/letsencrypt/live/blog.twoja-domena.pl/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/blog.twoja-domena.pl/privkey.pem;
root /var/www/blog.twoja-domena.pl/public_html;
index index.html index.php;
# Reszta konfiguracji
}2. Przekierowania
Przykłady użytecznych przekierowań:
# Przekierowanie HTTP na HTTPS
server {
listen 80;
server_name .twoja-domena.pl;
return 301 https://$host$request_uri;
}
# Przekierowanie www na non-www
server {
listen 443 ssl http2;
server_name www.twoja-domena.pl;
return 301 https://twoja-domena.pl$request_uri;
}Rozwiązywanie problemów
Najczęstsze problemy:
-
Strona nie działa
- Sprawdź logi serwera WWW
- Zweryfikuj konfigurację DNS
- Sprawdź uprawnienia plików
-
Problemy z SSL
- Sprawdź ważność certyfikatu
- Zweryfikuj konfigurację serwera WWW
- Sprawdź czy porty 80 i 443 są otwarte
-
Problemy z wydajnością
- Włącz cache w Nginx/Apache
- Zoptymalizuj konfigurację PHP
- Rozważ użycie CDN
Przydatne komendy diagnostyczne
# Test konfiguracji Nginx
nginx -t
# Test konfiguracji Apache
apachectl -t
# Sprawdź certyfikat SSL
openssl x509 -in /etc/letsencrypt/live/twoja-domena.pl/cert.pem -text
# Sprawdź DNS
dig twoja-domena.pl
dig @8.8.8.8 twoja-domena.pl
# Sprawdź otwarte porty
netstat -tulpnKontakt z pomocą techniczną
Jeśli potrzebujesz pomocy:
Sunohost Support
- Email: pomoc@sunohost.pl
- Panel klienta: https://panel.sunohost.pl/
