15%

БпСстСтС 15% ΠΎΡ‚ всички услуги Π·Π° хостинг

ВСствайтС умСнията си ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π΅Ρ‚Π΅ ΠΎΡ‚ΡΡ‚ΡŠΠΏΠΊΠ° Π·Π° всСки хостинг ΠΏΠ»Π°Π½

Π˜Π·ΠΏΠΎΠ»Π·Π²Π°ΠΉΡ‚Π΅ ΠΊΠΎΠ΄:

Skills
Π—Π° Π½Π°Ρ‡Π°Π»ΠΎ
11.02.2025

Как Π΄Π° ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€ΠΈΡ€Π°Ρ‚Π΅ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»Π½ΠΈ хостовС Π² Nginx Π² Ubuntu

ΠšΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€ΠΈΡ€Π°Π½Π΅Ρ‚ΠΎ Π½Π° Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»Π½ΠΈ хостовС Π² Nginx Π²ΠΈ позволява Π΄Π° хостватС няколко уСбсайта Π½Π° Π΅Π΄ΠΈΠ½ ΡΡŠΡ€Π²ΡŠΡ€, ΠΊΠ°Ρ‚ΠΎ всСки уСбсайт ΠΈΠΌΠ° собствСно ΠΈΠΌΠ΅ Π½Π° Π΄ΠΎΠΌΠ΅ΠΉΠ½. Π’ΠΈΡ€Ρ‚ΡƒΠ°Π»Π½ΠΈΡ‚Π΅ хостовС Π² Nginx сС ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€ΠΈΡ€Π°Ρ‚ с ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π½Π° “Π±Π»ΠΎΠΊΠΎΠ²Π΅ Π½Π° ΡΡŠΡ€Π²ΡŠΡ€Π°”, ΠΊΠΎΠΈΡ‚ΠΎ опрСдСлят настройкитС Π·Π° всСки уСбсайт. Π’ΠΎΠ²Π° Ρ€ΡŠΠΊΠΎΠ²ΠΎΠ΄ΡΡ‚Π²ΠΎ Ρ‰Π΅ Π²ΠΈ Π·Π°ΠΏΠΎΠ·Π½Π°Π΅ с ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€ΠΈΡ€Π°Π½Π΅Ρ‚ΠΎ Π½Π° Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»Π½ΠΈ хостовС Π½Π° ΡΡŠΡ€Π²ΡŠΡ€ Ubuntu с Nginx.

1. ΠŸΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»Π½ΠΈ условия

  • Π˜Π½ΡΡ‚Π°Π»ΠΈΡ€Π°Π½ Nginx: Π£Π²Π΅Ρ€Π΅Ρ‚Π΅ сС, Ρ‡Π΅ Nginx Π΅ инсталиран Π½Π° вашия ΡΡŠΡ€Π²ΡŠΡ€. Ако Π½Π΅, инсталирайтС Π³ΠΎ с:
    sudo apt update
    sudo apt install nginx
  • ИмСна Π½Π° Π΄ΠΎΠΌΠ΅ΠΉΠ½ΠΈ: Π˜ΠΌΠ΅Π½Π°Ρ‚Π° Π½Π° Π΄ΠΎΠΌΠ΅ΠΉΠ½ΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ искатС Π΄Π° хостватС, трябва Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ насочСни към IP адрСса Π½Π° вашия ΡΡŠΡ€Π²ΡŠΡ€. ΠœΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈΡ‚Π΅ Ρ„Π°ΠΉΠ»Π° /etc/hosts Π·Π° Ρ†Π΅Π»ΠΈΡ‚Π΅ Π½Π° тСстванСто.

2. БъздаванС Π½Π° Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ Π·Π° всСки уСбсайт

ВсСки уСбсайт трябва Π΄Π° ΠΈΠΌΠ° собствСна дирСктория Π·Π° ΡΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ Π½Π° Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅Ρ‚Π΅ Π½Π° сайта. НСка създадСм Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ Π·Π° Π΄Π²Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π½ΠΈ уСбсайта – example1.com ΠΈ example2.com.

sudo mkdir -p /var/www/example1.com/html
sudo mkdir -p /var/www/example2.com/html

ΠŸΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π΅Ρ‚Π΅ ΠΏΡ€Π°Π²ΠΎΡ‚ΠΎ Π½Π° собствСност Π²ΡŠΡ€Ρ…Ρƒ Ρ‚Π΅Π·ΠΈ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ Π½Π° потрСбитСля Nginx (www-data), Π·Π° Π΄Π° сС ΡƒΠ²Π΅Ρ€ΠΈΡ‚Π΅, Ρ‡Π΅ Nginx ΠΈΠΌΠ° Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΈΡ‚Π΅ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ.

sudo chown -R www-data:www-data /var/www/example1.com/html
sudo chown -R www-data:www-data /var/www/example2.com/html

Π—Π°Π΄Π°ΠΉΡ‚Π΅ подходящи Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ:

sudo chmod -R 755 /var/www

3. БъздаванС Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π½ΠΎ ΡΡŠΠ΄ΡŠΡ€ΠΆΠ°Π½ΠΈΠ΅

Π—Π° Π΄Π° тСстватС Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»Π½ΠΈΡ‚Π΅ хостовС, Π΄ΠΎΠ±Π°Π²Π΅Ρ‚Π΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π½ΠΈ HTML Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅ Π·Π° всСки сайт.

Example1.com:

echo "<h1>Welcome to Example1.com!</h1>" | sudo tee /var/www/example1.com/html/index.html

Example2.com:

echo "<h1>Welcome to Example2.com!</h1>" | sudo tee /var/www/example2.com/html/index.html

4. БъздаванС Π½Π° ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΈ Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅ Π·Π° Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»Π΅Π½ хост

Π‘Π΅Π³Π° Ρ‰Π΅ създадСм ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΎΠ½Π΅Π½ Ρ„Π°ΠΉΠ» Π·Π° ΡΡŠΡ€Π²ΡŠΡ€Π΅Π½ Π±Π»ΠΎΠΊ (Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»Π΅Π½ хост) Π·Π° всСки уСбсайт. Nginx ΡΡŠΡ…Ρ€Π°Π½ΡΠ²Π° Ρ‚Π΅Π·ΠΈ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΈ Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅ Π² дирСкторията /etc/nginx/sites-available/.

Π‘Ρ‚ΡŠΠΏΠΊΠ° 1: БъздаванС Π½Π° конфигурация Π·Π° Example1.com

Π‘ΡŠΠ·Π΄Π°ΠΉΡ‚Π΅ Π½ΠΎΠ² ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΎΠ½Π΅Π½ Ρ„Π°ΠΉΠ» Π·Π° example1.com:

sudo nano /etc/nginx/sites-available/example1.com

Π”ΠΎΠ±Π°Π²Π΅Ρ‚Π΅ слСдната конфигурация:

server {
listen 80;
server_name example1.com www.example1.com;
root /var/www/example1.com/html;
index index.html;
location / {
try_files $uri $uri/ =404;
}
}

Π‘Ρ‚ΡŠΠΏΠΊΠ° 2: БъздаванС Π½Π° конфигурация Π·Π° Example2.com

Π‘ΡŠΠ·Π΄Π°ΠΉΡ‚Π΅ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΎΠ½Π΅Π½ Ρ„Π°ΠΉΠ» Π·Π° example2.com:

sudo nano /etc/nginx/sites-available/example2.com

Π”ΠΎΠ±Π°Π²Π΅Ρ‚Π΅ слСдната конфигурация:

server {
listen 80;
server_name example2.com www.example2.com;
root /var/www/example2.com/html;
index index.html;
location / {
try_files $uri $uri/ =404;
}
}

5. АктивиранС Π½Π° Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»Π½ΠΈΡ‚Π΅ хостовС

Nginx ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° символни Π²Ρ€ΡŠΠ·ΠΊΠΈ, Π·Π° Π΄Π° Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€Π° Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»Π½ΠΈΡ‚Π΅ хостовС. Π‘Π²ΡŠΡ€ΠΆΠ΅Ρ‚Π΅ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΈΡ‚Π΅ Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅ ΠΎΡ‚ sites-available към sites-enabled:

sudo ln -s /etc/nginx/sites-available/example1.com /etc/nginx/sites-enabled/
sudo ln -s /etc/nginx/sites-available/example2.com /etc/nginx/sites-enabled/

6. ВСстванС Π½Π° конфигурацията

Π—Π° Π΄Π° сС ΡƒΠ²Π΅Ρ€ΠΈΡ‚Π΅, Ρ‡Π΅ Π² конфигурацията Π²ΠΈ няма Π³Ρ€Π΅ΡˆΠΊΠΈ Π² синтаксиса, ΠΈΠ·ΠΏΡŠΠ»Π½Π΅Ρ‚Π΅:

sudo nginx -t

Ако всичко Π΅ ΠΏΡ€Π°Π²ΠΈΠ»Π½ΠΎ, Ρ‰Π΅ Π²ΠΈΠ΄ΠΈΡ‚Π΅ ΡΡŠΠΎΠ±Ρ‰Π΅Π½ΠΈΠ΅ Π·Π° ΠΏΠΎΡ‚Π²ΡŠΡ€ΠΆΠ΄Π΅Π½ΠΈΠ΅. Ако ΠΈΠΌΠ° Π³Ρ€Π΅ΡˆΠΊΠΈ, Nginx Ρ‰Π΅ ΠΏΠΎΠΊΠ°ΠΆΠ΅ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Π° информация, Π·Π° Π΄Π° Π²ΠΈ ΠΏΠΎΠΌΠΎΠ³Π½Π΅ Π΄Π° отстранитС ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΈΡ‚Π΅.

7. РСстартирайтС Nginx

Π‘Π»Π΅Π΄ ΠΊΠ°Ρ‚ΠΎ ΠΏΠΎΡ‚Π²ΡŠΡ€Π΄ΠΈΡ‚Π΅ конфигурацията, рСстартирайтС Nginx, Π·Π° Π΄Π° ΠΏΡ€ΠΈΠ»ΠΎΠΆΠΈΡ‚Π΅ ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈΡ‚Π΅:

sudo systemctl restart nginx

8. Π”ΠΎΡΡ‚ΡŠΠΏ Π΄ΠΎ уСбсайтовСтС

Ако ΠΈΠΌΠ΅Π½Π°Ρ‚Π° Π½Π° Π΄ΠΎΠΌΠ΅ΠΉΠ½ΠΈ са насочСни към вашия ΡΡŠΡ€Π²ΡŠΡ€, сСга трябва Π΄Π° ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅ Π΄ΠΎΡΡ‚ΡŠΠΏ Π΄ΠΎ всСки сайт, ΠΊΠ°Ρ‚ΠΎ посСтитС:

  • http://example1.com
  • http://example2.com

Π—Π° Π»ΠΎΠΊΠ°Π»Π½ΠΎ тСстванС ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€Π°Ρ‚Π΅ Ρ„Π°ΠΉΠ»Π° /etc/hosts, Π·Π° Π΄Π° ΡΡŠΠΏΠΎΡΡ‚Π°Π²ΠΈΡ‚Π΅ ΠΈΠΌΠ΅Π½Π°Ρ‚Π° Π½Π° Π΄ΠΎΠΌΠ΅ΠΉΠ½ΠΈ с IP адрСса Π½Π° вашия ΡΡŠΡ€Π²ΡŠΡ€. Π”ΠΎΠ±Π°Π²Π΅Ρ‚Π΅ записи ΠΊΠ°Ρ‚ΠΎ:

127.0.0.1 example1.com 127.0.0.1 example2.com

Π—Π°ΠΏΠ°Π·Π΅Ρ‚Π΅ ΠΈ Π·Π°Ρ‚Π²ΠΎΡ€Π΅Ρ‚Π΅ Ρ„Π°ΠΉΠ»Π°, слСд ΠΊΠΎΠ΅Ρ‚ΠΎ ΠΎΠΏΠΈΡ‚Π°ΠΉΡ‚Π΅ Π΄Π° ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅ Π΄ΠΎΡΡ‚ΡŠΠΏ Π΄ΠΎ сайтовСтС Π² Π±Ρ€Π°ΡƒΠ·ΡŠΡ€Π° си.

9. Π’ΠΊΠ»ΡŽΡ‡Π²Π°Π½Π΅ Π½Π° HTTPS Π·Π° всСки сайт (ΠΏΠΎ ΠΈΠ·Π±ΠΎΡ€)

Π—Π° сигурни Π²Ρ€ΡŠΠ·ΠΊΠΈ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° настроитС SSL сСртификати, ΠΊΠ°Ρ‚ΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚Π΅ Let’s Encrypt. Π—Π° Π΄Π° Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€Π°Ρ‚Π΅ HTTPS:

Π˜Π½ΡΡ‚Π°Π»ΠΈΡ€Π°ΠΉΡ‚Π΅ certbot:

sudo apt install certbot python3-certbot-nginx

Π˜Π·ΠΏΡŠΠ»Π½Π΅Ρ‚Π΅ слСдната ΠΊΠΎΠΌΠ°Π½Π΄Π°, Π·Π° Π΄Π° ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅ ΠΈ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€ΠΈΡ€Π°Ρ‚Π΅ SSL сСртификати Π·Π° всСки Π΄ΠΎΠΌΠ΅ΠΉΠ½:

sudo certbot --nginx -d example1.com -d www.example1.com
sudo certbot --nginx -d example2.com -d www.example2.com

Π‘Π»Π΅Π΄Π²Π°ΠΉΡ‚Π΅ указанията ΠΈ Certbot Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΡ‡Π½ΠΎ Ρ‰Π΅ създадС HTTPS Π² конфигурацията Π½Π° Nginx.

Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

Π§Ρ€Π΅Π· ΡΡŠΠ·Π΄Π°Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»Π½ΠΈ хостовС Π² Nginx Π² Ubuntu ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° хостватС мноТСство уСбсайтовС Π½Π° Π΅Π΄ΠΈΠ½ ΡΡŠΡ€Π²ΡŠΡ€, всСки със собствСна конфигурация ΠΈ ΡΡŠΠ΄ΡŠΡ€ΠΆΠ°Π½ΠΈΠ΅. Π’Π°Π·ΠΈ конфигурация Π΅ Π΅Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½Π° ΠΈ ΠΌΠ°Ρ‰Π°Π±ΠΈΡ€ΡƒΠ΅ΠΌΠ°, ΠΊΠΎΠ΅Ρ‚ΠΎ ΠΏΡ€Π°Π²ΠΈ Nginx ΠΎΡ‚Π»ΠΈΡ‡Π΅Π½ ΠΈΠ·Π±ΠΎΡ€ Π·Π° хостванС Π½Π° мноТСство сайтовС Π½Π° Π΅Π΄ΠΈΠ½ ΠΈ ΡΡŠΡ‰ ΡΡŠΡ€Π²ΡŠΡ€.

15%

БпСстСтС 15% ΠΎΡ‚ всички услуги Π·Π° хостинг

ВСствайтС умСнията си ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π΅Ρ‚Π΅ ΠΎΡ‚ΡΡ‚ΡŠΠΏΠΊΠ° Π·Π° всСки хостинг ΠΏΠ»Π°Π½

Π˜Π·ΠΏΠΎΠ»Π·Π²Π°ΠΉΡ‚Π΅ ΠΊΠΎΠ΄:

Skills
Π—Π° Π½Π°Ρ‡Π°Π»ΠΎ