Physical Address
304 North Cardinal St.
Dorchester Center, MA 02124
Physical Address
304 North Cardinal St.
Dorchester Center, MA 02124
Конкретна полза: Ще настроите бърз, сигурен и оптимизиран уеб сървър с HTTPS.
Специфично съдържание: Настройка на Nginx, PHP-FPM, Let's Encrypt SSL, кеширане, security headers и оптимизация.
Измерима стойност: Работещ HTTPS сайт за под 30 минути, дори ако сте напълно начинаещ. ✅
sudo
example.com
)sudo apt update && sudo apt upgrade -y
📌 Важно: Никога не пропускайте тази стъпка при нова инсталация!
sudo apt install nginx -y
Стартирайте и активирайте:
sudo systemctl start nginx
sudo systemctl enable nginx
Проверете:
systemctl status nginx
🔎 Бонус: Отворете IP адреса в браузъра. Трябва да видите "Welcome to Nginx".
sudo apt install php-fpm php-mysql php-cli php-curl php-mbstring php-xml -y
Проверка на версия:
php -v
📌 Съвет: Ако използвате WordPress или Laravel, добавете и php-zip
и php-bcmath
.
sudo mkdir -p /var/www/example.com/public
Дайте права:
sudo chown -R $USER:www-data /var/www/example.com
Добавете примерен файл:
echo "<?php phpinfo(); ?>" > /var/www/example.com/public/index.php
Създайте нов конфигурационен файл:
sudo nano /etc/nginx/sites-available/example.com
Добавете:
server {
listen 80;
server_name example.com www.example.com;
root /var/www/example.com/public;
index index.php index.html;
location / {
try_files $uri $uri/ =404;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php8.1-fpm.sock;
}
location ~ /\.ht {
deny all;
}
access_log /var/log/nginx/example.com.access.log;
error_log /var/log/nginx/example.com.error.log;
}
Активирайте сайта:
sudo ln -s /etc/nginx/sites-available/example.com /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl reload nginx
✅ Готово! Сайтът работи по HTTP.
Инсталирайте Certbot:
sudo apt install certbot python3-certbot-nginx -y
Издайте сертификат:
sudo certbot --nginx -d example.com -d www.example.com
Автоматично обновяване:
sudo systemctl enable certbot.timer
🔒 Вече имате HTTPS! Браузърът показва зелено катинарче. ✅
Отворете example.com
конфигурацията:
sudo nano /etc/nginx/sites-available/example.com
Добавете вътре в server {}
:
add_header X-Content-Type-Options "nosniff";
add_header X-Frame-Options "SAMEORIGIN";
add_header X-XSS-Protection "1; mode=block";
add_header Strict-Transport-Security "max-age=31536000; includeSubDomains" always;
add_header Referrer-Policy "no-referrer-when-downgrade";
add_header Permissions-Policy "geolocation=(), microphone=()";
Рестартирайте Nginx:
sudo systemctl reload nginx
🛡️ Повече сигурност с няколко реда конфигурация!
Добавете това в server {}
:
location ~* \.(jpg|jpeg|png|gif|ico|css|js|woff2?|ttf|svg)$ {
expires 30d;
access_log off;
add_header Cache-Control "public, no-transform";
}
📌 Резултат: По-бързо зареждане на сайта, по-малко натоварване на сървъра.
Ето няколко съвета:
Добавете в nginx.conf
:
gzip on;
gzip_types text/plain application/xml application/json application/javascript text/css;
Променете:
listen 443 ssl http2;
php-opcache
:sudo apt install php-opcache -y
Проверете дали е включен:
php -i | grep opcache.enable
📌 Съвет: За WordPress сайтове, активирайте и object cache
(например Redis).
👉 https://www.ssllabs.com/ssltest/
👉 https://securityheaders.com/
sudo ufw allow 'Nginx Full' sudo ufw enable
tail -f /var/log/nginx/example.com.error.log
Компонент | Състояние |
---|---|
Nginx | ✅ Инсталиран |
PHP-FPM | ✅ Свързан и активен |
Let's Encrypt SSL | ✅ Автоматизиран |
Кеширане | ✅ Активирано |
Security Headers | ✅ Добавени |
Оптимизация | ✅ Завършена |
Сега вече имате напълно работещ, сигурен и бърз уеб сървър с HTTPS, готов за продукционна среда. 🚀
Дори и като начинаещ, вече можете да настроите стабилен сървър за по-малко от 30 минути.
Ако тази статия ви беше полезна – споделете я с приятели и колеги. Нека повече хора създават бързи и защитени сайтове! 💡🌍
Благодарим ви за прочитането на статията! Ако намерихте информацията за полезна, можете да дарите посредством бутоните по-долу:
Donate ☕️ Дарете с PayPalDonate 💳 Дарете с Revolut