Виртуални хостове с Apache, част 1

apache logoКой не е чувал за Апача, кой не се е борил с него? Apache e най-разпространеният уеб сървър. Като казвам уеб сървър, имам предвид софтуер, а не купчина железа. Apache e софтуер с отворен код и може да върви на всяка купчина железа, която може да се нарече компютър и на почти всяка платформа, която може да се нарече операционна система. Това, което представлява интернет в момента, до голяма степен се дължи на Apache. Заедно с Linux, MySQL и PHP/Perl, е част от широко разпространената LAMP(Linux, Apache, MySQL, PHP/Perl) платформа, която е перфектна основа за всякакви уеб приложения и сайтове. Платформата е лека, бърза, гъвкава и масово използвана както от професионалисти, така и от любители. Текущата верися на Apache е Apache 2.2.21. В настоящата статия, ще разгледам при какви условия и как можем да използваме Apache, за да изградим любителски  Уеб Сървър, базиран на Линукс,  на който можем да хостваме свои сайтове, които са повече от един. Това ще бъде разгледано в най-простия и лесен случай, без да се впускам в подробности. Не препоръчвам написаното да се използва в директен вид на продукционни сървъри, без да се прочете много повече допълнителна информация. Няма да се спирам на инсталацията на Apache, още по-малко от source, при всички съвременни дистрибуции, инсталацията става от съответния пакетен мениджър за броени минути. Обикновено, след инсталация на Apache на някоя Линукс дистрибуция, без да правим допълнителни настройки, вече имаме работещ уеб сървър. Остава само да изкопираме файловете си в неговия root, който по подразбиране, може да бъде различен за различните дистрибуции. Ако имаме домейн, трябва да направим и съответните DNS настройки. Какво обаче можем да направи, ако имаме повече сайтове с повече домейн имена? Да навържем много машини с много IP адреси? Спокойно, Apache може да свърши цялата работа при една машина, с един публичен IP адрес. За целта, ще използваме възможността на Apache за виртуални хостове. Виртуалните хостове при Apache могат да бъдат IP-базирани и базирани на имена. В първият случай, виртуалните хостове разполагат с отделни IP адреси. Тъй като настоящата статия е предназначена за любители, се предполага, че разполагате с един публичен IP адрес и ще разгледам варианта с виртуални хостове базирани на име. За да бъде всичко по-лесно и по-достъпно, ще използвам възможно най-много настройки по подразбиране. След като Apache вече е инсталиран, трябва да извършим малко промени в конфигурационните му файлове. За различните дистрибуции, те могат да бъдат на различни места, при OpenSUSE и Debian/Ubuntu в /etc/apache2, при Fedora в /etc/httpd/ и т.н. Стартиращият скрипт обикновено се намира в /etc/init.d/ и може да бъде както  apache2, така и httpd. За да стартираме Apache, изпълняваме

OpenSUSE:

#/etc/init.d/apache2 start

Fedora:

#/etc/init.d/httpd start

Трябва да направим така, че Apache да се пуска със зареждане на системата:

#chkconfig apache2 on  - OpenSuSE
#chkconfig httpd on  - Fedora

За да тестваме Apache , в директорията за html(DocumentRoot) , ще създадем index.html файл. В OpenSUSE тази директория е /srv/www/htdocs . За другите дистрибуции, мястото и по подразбиране може да е друго. Разбира се,  директивата DocumentRoot може лесно да се променя, но тук няма да се спираме на това.

Създаваме файла:

#echo "<h1>Apache работи!</h1>" > /srv/www/htdocs/index.html

Горното може да се направи и с произволен текстов редактор, като запишем index.html файл, със съдържание <h1>Apache работи!</h1> в /srv/www/htdocs/

Ако тестваме Apache на компютъра, на който работим, в произволен браузер отваряме

http://127.0.0.1 или localhost.

Ако видим заглавието Apache работи! , значи всичко е наред.

Във втората част на статията, ще се спра на конфикурацията на виртуални хостове в Apache.
Отвори Виртуални хостове с Apache, част 2

© 2011, Ваньо Контев. Всички права запазени. Копирането на статията е разрешено само с връзка към първоизточника!

Публикувано в web, Линукс, Мрежи и сървъри с етикети , , , . Постоянна връзка.

Вашият коментар

Вашият имейл адрес няма да бъде публикуван Задължителните полета са отбелязани с *

Можете да използвате тези HTML тагове и атрибути: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre lang="" line="" escaped="" highlight="">