• Дигитални аксесоари
  • сървър
  • Дигитален живот
  • Политика за поверителност
  • Свържете се с нас
  1. Home
  2. Article
  3. Webdock: Как да конфигурирате Nginx да обслужва множество уебсайтове ...

Webdock: Как да конфигурирате Nginx да обслужва множество уебсайтове ...

Rsdaa 11/12/2021 1240

Въведение

Тази статия описва как да конфигурирате виртуален хостинг за Nginx. Ако търсите ръководство за Apache, щракнете тук.

Има няколко причини да искате да хоствате множество уебсайтове на един сървър. Ако използвате специален сървър / VPS и искате да хоствате множество приложения на отделен домейн и един сървър, тогава ще трябва да хоствате множество уебсайтове на един сървър. Можете да постигнете това с виртуален хостинг Apache / Nginx. Виртуалният хостинг ви позволява да използвате един VPS, за да хоствате всичките си домейни. Така че хостването на множество уебсайтове на един VPS сървър с помощта на виртуален хостинг е най-доброто решение за вас да намалите разходите за хостинг.

На теория няма ограничение за броя на сайтовете, които можете да хоствате на своя VPS с Apache или Nginx. Но се уверете, че вашият сървър има достатъчно дисково пространство, процесор и RAM.

В този урок ще научим как да настроим множество уебсайтове на Ubuntu VPS с Nginx.

Webdock не ви препоръчва да използвате нашите сървъри за споделен хостинг, тъй като това може да причини редица проблеми и да ви попречи да използвате някои от нашите инструменти за управление, а именно нашето лесно управление на Let's Encrypt / Certbot за SSL сертификати и управление на Wordpress. Щракнете тук, за да прочетете защо смятаме, че наистина трябва да използвате един VPS за всеки уебсайт / приложение.

Моля, обърнете внимание: Извършването на тези действия може да доведе до повреда на вашия сървър. Не правете това на жив сайт, без да знаете потенциалните последствия.

Предварителни условия

Свеж екземпляр на Webdock cloud Ubuntu с инсталиран LEMP. Две валидни имена на домейни са насочени към вашия VPS IP адрес. В този урок ще използваме web1.webdock.io и web2.webdock.io. Имате shell (SSH) достъп до вашия VPS.

Забележка: Можете да се обърнете към Ръководството за DNS на Webdock, за да управлявате DNS записите.

Конфигуриране на Nginx за хостване на множество уебсайтове

В този раздел ще ви покажем как да хоствате два уебсайта с имена web1.webdock.io и web2.webdock.io на един Ubuntu VPS с уеб сървър на Nginx.

Създаване на структура на директория

Преди да започнете, уверете се, че LEMP стекът е инсталиран на вашия VPS. Можете да проверите състоянието на Nginx сървъра със следната команда:

systemctl status nginx

Най-добрият метод за хостване на множество уебсайтове е да създадете отделна основна директория на документа и конфигурационен файл за всеки уебсайт. Така че ще трябва да създадете структура на директория и за двата уебсайта в уеб корена на Nginx:

За да направите това, изпълнете следната команда за всеки уебсайт:

mkdir /var/www/html/web1.webdock.iomkdir /var/www/html/web2.webdock.io

След това ще трябва да създадете примерно съдържание на уебсайт за всеки уебсайт:

Първо създайте файл index.html за уеб сайта web1.webdock.io:

nano /var/www/html/web1.webdock.io/index.html

Добавете следната HTML маркировка, която ще бъде сервирана, когато се свържете със сайта:

web1.webdock.io

Добре дошли в web1.webdock.io с уеб сървър Nginx.

Запазете и затворете файла.

След това създайте файл index.html за уеб сайта web2.webdock.io:

nano /var/www/html/web2.webdock.io/index.html

Добавете следното HTML маркиране, което ще се показва, когато се свържете със сайта:

web2.webdock.io

Добре дошли в web2.webdock.io с уеб сървър Nginx.

Запазете и затворете файла. След това променете собствеността на двете директории на уебсайтове на www-data:

chown -R www-data:www-data /var/www/html/web1.webdock.iochown -R www-data:www-data /var/www/html/web2.webdock.io

Създаване на виртуална конфигурация< /h2>

След това ще трябва да създадете конфигурационен файл за виртуален хост за всеки уебсайт, който показва как уеб сървърът на Nginx ще отговаря на различни заявки за домейн.

Първо създайте конфигурационен файл за виртуален хост за уебсайта web1.webdock.io:

nano /etc/nginx/sites-available/web1.webdock.io.conf

Добавете следните редове:

сървър {listen 80;listen [::]:80;root /var/www/html/web1.webdock.io;index index.html index.htm;server_name web1.webdock.io; местоположение / {try_files $uri $uri/ =404; }}

Запазете и затворете файла. След това създайте конфигурационен файл за виртуален хост за уебсайта web2.webdock.io:

nano /etc/nginx/sites-available/web2.webdock.io.conf

Добавете следните редове:

сървър {listen 80;listen [::]:80;root /var/www/html/web2.webdock.io;index index.html index.htm;server_name web2.webdock.io; местоположение / {try_files $uri $uri/ =404; }}

Запазете и затворете файла. След това активирайте всеки виртуален хост със следната команда:

ln -s /etc/nginx/sites-available/web1.webdock.io.conf /etc/nginx/sites-enabled/ln -s /etc/nginx/sites-available/web2.webdock.io.conf /etc/ nginx/sites-enabled/

След това проверете Nginx за синтактична грешка със следната команда:

nginx -t

Ако всичко върви добре, трябва да получите следния резултат:

nginx: синтаксисът на конфигурационния файл /etc/nginx/nginx.conf е oknginx: тестът на конфигурационния файл /etc/nginx/nginx.conf е успешен

Накрая рестартирайте услугата Nginx, за да приложите промените в конфигурацията:

systemctl рестартирайте nginx

Тествайте уебсайтовете си

Сега отворете вашия уеб браузър и въведете URL адреса http://web1.webdock.io и http://web2.webdock.io. Трябва да видите и двата уебсайта със съдържанието, което създадохме по-рано:

web1.webdock.io

web2.webdock.io

Добавяне на поддръжка на PHP-FPM към Nginx

PHP-FPM, известен също като „PHP-FastCGI Process Manager“, е FastCGI манипулатор за PHP скриптове и приложения. Позволява на уебсайта да се справя с големи натоварвания. PHP-FPM е по-бърз от традиционните CGI-базирани методи за многопотребителски PHP среди. PHP-FPM ви позволява да хоствате множество приложения, които използват различни версии на PHP.

Вероятно искате да активирате поддръжката на PHP, тъй като в противен случай неща като Wordpress няма да работят. Тъй като началната ви точка беше Webdock LEMP стек, тогава всичко вече е инсталирано и конфигурирано правилно за PHP версията във вашия стек. В този пример използваме php 7.3 - заменете номера на версията с това, което е подходящо за стека, с който сте започнали.

За да активирате поддръжката на PHP-FPM на уебсайта web1.webdock.io, отворете съществуващата конфигурация на webdock по подразбиране за вашия сървър в /etc/nginx/sites-enabled/webdock:

nano /etc/nginx/sites-enabled/webdock

Копирайте следните редове - като внимавате номерът на версията на php-fpm по-долу да е правилен за вашия сървър::

местоположение ~ \.php$ {fastcgi_split_path_info ^(.+\.php)(/.+)$;fastcgi_pass unix:/var/run/php/php7.3-fpm.sock;fastcgi_index index.php;включете fastcgi_params;fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;fastcgi_intercept_errors off;fastcgi_buffer_size 16k;fastcgi_buffers 4 16k;fastcgi_connect_timeout 600;fastcgi_send_timeout 600;fastcgi_read_timeout 600;}

След това отворете виртуалния хост Nginx конфигурационен файл за уебсайт web1.webdock.io със следната команда:

nano /etc/nginx/sites-available/web1.webdock.io.conf

Поставете всички редове, които сте копирали от конфигурационния файл на webdock, както е показано по-долу - като внимавате номерът на версията на php-fpm по-долу да е правилен за вашия сървър:

сървър {listen 80;root /var/www/html/web1.webdock.io;index index.html index.htm index.php;server_name web1.webdock.io;location ~ \.php$ {fastcgi_split_path_info ^(.+\ .php)(/.+)$;fastcgi_pass unix:/var/run/php/php7.3-fpm.sock;fastcgi_index index.php;include fastcgi_params;fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;fastcgi_intercept_errors off;fastcgi_buffer_size 16k;fastc gi_buffers 4 16k;fastcgi_connect_timeout 600;fastcgi_send_timeout 600;fastcgi_read_timeout 600;} местоположение / {try_files $uri $uri/ =404; }}

Запазете и затворете файла. След това рестартирайте Nginx и правилната PHP-FPM услуга, за да приложите промените в конфигурацията:

systemctl рестартирайте nginxsystemctl рестартирайте php7.3-fpm

Повторете същия процес за уебсайт web2.webdock.io

Заключение & Следващи стъпки

Поздравления! вече успешно настроихте уебсайта си да хоства два уебсайта на един Ubuntu VPS. Надяваме се, че вече имате достатъчно знания, за да хоствате неограничен брой уебсайтове на вашия собствен сървър. За повече информация относно виртуалния хостинг на Nginx можете да посетите Nginx Virtual Hosting.

Може също така да искате да защитите новите си уебсайтове с Let's Encrypt SSL сертификати. Стандартният контролен панел Webdock може да обработва само един уебсайт / webroot, така че ако искате да защитите всичките си сайтове на един и същ сървър, трябва да го направите и ръчно. Щракнете тук, за да научите как да издавате SSL сертификати за всички ваши уебсайтове.


PREV: Коя е/коя беше любимата ви битка за шеф на частен сървър?

NEXT: Идентификатор на събитие: 3003 (Възникна грешка при валидирането) [От страна на клиента ...

Popular Articles

Hot Articles

Navigation Lists

Back to Top