• Дигитални аксесоари
  • сървър
  • Дигитален живот
  • Политика за поверителност
  • Свържете се с нас
  1. Home
  2. Article
  3. Как да конфигурирате виртуални хостове Apache на CentOS 7 | Течна мрежа

Как да конфигурирате виртуални хостове Apache на CentOS 7 | Течна мрежа

Rsdaa 13/11/2021 1921

Днес ще прегледаме как да конфигурираме виртуални хостове на Apache на CentOS 7 VPS сървър или специален сървър. Ако хоствате уебсайтове, има вероятност да хоствате повече от един. Ако е така, знанието как и защо работят тези виртуални хостове трябва да ви позволи да разберете по-добре защо са необходими. По подразбиране Apache може да хоства само един корен на документ за всички заявки, което вероятно не е това, което искате да се случи.

Можем да използваме блокове VirtualHost, за да преведем именувани домейни в техните подходящи корени на документи, с нови настройки за всеки блок, ако е необходимо. Но какво влиза в валиден VirtualHost? Къде трябва да се съхранява?

Проверка преди полета

За тази статия ще използваме управляван от ядро ​​CentOS 7 VPS, който идва с чиста инсталация на Apache 2.4. Инструкциите ще бъдат подобни за CentOS 6, а също и за Unmanaged CentOS 7 сървъри, със същата версия на Apache. Имаме SSH връзка към нашия сървър като root потребител.

Стъпка 1: Настройте Apache

Apache ще бъде конфигуриран да хоства множество сайтове незабавно, така че няма какво да правите тук. Исторически погледнато (т.е. в Apache 2.2), NameVirtualHost беше необходим, за да кажем на Apache, че искаме да използваме блокове за виртуален хост за хостване на множество сайтове. Тъй като това е преобладаваща опция, тя вече е включена по подразбиране в Apache 2.4, така че нямаме нужда от допълнителна конфигурация. Но искаме да сме сигурни, че Apache е активиран и ще стартира при зареждане.

systemctl enable httpdsystemctl start httpd

Тези две команди не трябва да имат резултат. Ако имат резултат, има предупреждение или грешка, за които можете да видите подробности, като изпълните:

Apache вече работи и е готов да хоства сайтове!

Стъпка 2: Добавяне на корени на документи

Сега имаме нужда от няколко домейна, които да добавим към Apache. Нека настроим две нови основни папки на документи, една в /var/www/domain.com/ и една в /var/www/domain.net.

mkdir -p /var/www/domain.netmkdir -p /var/www/domain.com

Сега можете да започнете да добавяте уникално съдържание към всяка папка. Добавянето на основен файл index.html, който казва какъв домейн зареждате, тъй като това ще ни помогне да проверим работата си по-късно.

mkdir -p /var/www/domain.netmkdir -p /var/www/domain.com

Ако сте осигурили Apache да работи под друг потребител, трябва да актуализирате собствеността и разрешенията. В противен случай Apache ще работи като root със собственост на root файла.

Стъпка 3: Добавете виртуални хост файлове

Сега, когато имаме сайтове за хостване, трябва да кажем на Apache за тях. Ще направим нов файл за всеки домейн, така че да можем да активираме или деактивираме (или да добавяме и премахваме) надолу. Напишете следното във файл на /etc/httpd/conf.d/domain.com.conf:

Нека разделим тези редове.

Първият ред отваря нашия блок VirtualHost и определя какъв IP адрес и порт ще слушаме за тази директива. Звездичката идентифицира всички IP адреси на сървъра и порт 80 като не-SSL порт, тъй като все още нямаме SSL.

Единствените два реда, които трябва да имате в блок VirtualHost, са ServerName и DocumentRoot. Те казват на Apache какви входящи заявки за домейн да слуша и коя папка да обслужва тези заявки.

Псевдонимът на сървъра може да опише други домейни, които трябва да обслужват същия корен на документа, което може да бъде полезно, да речем, при инсталация на WordPress с множество сайтове.

Редът ErrorLog казва на Apache къде да съхранява грешки, свързани със зареждането на този домейн. Един единствен уникален файл може да разделя регистрационни файлове за домейн, като например domain.com.error.log.

CustomLog с опцията „комбиниран“ ще регистрира всички заявки за достъп за този домейн. Този дневник също е особено полезен при отстраняване на проблеми, които възникват, когато се направи заявка. Също така, това може да бъде много полезно за проследяване на това какви IP адреси имат достъп до вашия сайт.

Други опции за Virtualhost

Има други полезни редове, които можете да добавите към вашия блок VirtualHost:

ServerAdmin декларира имейл адреса на уеб администратора и се предоставя на посетителите, ако възникне грешка. Тук могат да се задават и други опции; Подобно на .htaccess файл, можем да изключим индексни страници или символни връзки. RewriteEngine може да бъде активиран във VirtualHost Също така, други условия и правила за презаписи

Почти всичко, което можете да поставите в .htaccess файл, може също да отиде в конфигурация на VirtualHost файл. След като вече имаме VirtualHost за domain.com, направете друг за domain.net по същия начин.

Стъпка 4: Тествайте и рестартирайте Apache

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

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

Ако има проблеми, командата httpd трябва да ни каже кой ред, както и кой файл е причинил безпокойството. Сега можем да презаредим конфигурацията в Apache.

Отново, ако презареждането е успешно, тази команда няма да има резултат. Можем да потвърдим, че заредихме VirtualHosts, като изпълним:

root@host [~]# httpd -S VirtualHost конфигурация: 127.0.0.1:80host.server.com (/etc/apache2/conf/httpd.conf:305) 127.0.0.1:443 host.server.com (/etc/ apache2/conf/httpd.conf:3726) 67.227.197.126:80 е сървър по подразбиране NameVirtualHost host.server.com (/etc/apache2/conf/httpd.conf:327)порт 80 namevhost host.server.com (/etc/ apache2/conf/httpd.conf:327)порт 80 namevhost domain.com (/etc/apache2/conf/httpd.conf:390)псевдоним mail.domain.comalias www.domain.com

Резултатът от тази команда ще показва текущата работеща конфигурация на Apache, включително блоковете VirtualHost, които са заредени.

Трябва да видите два записа, които казват „*:80“ в началото на реда, което ще бъде domain.com и domain.net. Ще видите и конфигурационния файл, от който е зареден VirtualHost, в скоби.

Ако сте настроили DNS записите за домейните, сега можете да посетите домейните във вашия браузър и ще видите двата файла index.html, които написахме по-рано. Ако все още не сте настроили DNS, можете да тествате с помощта на модификация на хост файла на вашата работна станция.

Готово! Сега, когато нашите VirtualHosts са готови и работят, можем да продължим да конфигурираме нашите уебсайтове, да защитим нашия сървър или да настройваме SSL за новоинсталираните домейни.

Ние сме тук, за да помогнем!

Имате ли други мисли или притеснения? Ако е така, екипът за поддръжка на Liquidweb може да помогне. Просто отворете билет при нас днес на support@liquidweb.com, обадете ни се на 1-800-580-4985 или ни пишете чрез чат, за да говорите с един от нашите администратори за поддръжка от ниво 3 днес!


PREV: Проблеми със сървъра, които ви развалят (и решения!) | Блог на Udemy

NEXT: Как да коригирам грешката „Недостъпен хост на местоназначението“?

Popular Articles

Hot Articles

Navigation Lists

Back to Top