Ние се създаде уеб сървър на базата на Debian Apache

Ние се създаде уеб сървър на базата на Debian Apache
Apache уеб сървър, без преувеличение да се нарече де факто стандарт в интернет. Повечето от популярните системи за управление на съдържанието и други уеб приложения са разработени по такъв начин да се работи с уеб сървъра "извън кутията". Ето защо, ако имате нужда от уеб сървър широка употреба, Apache ще бъде най-добрият избор. В тази статия ще ви покажем как да инсталирате и конфигурирате пълноправен уеб сървър на базата на Debian / Ubuntu Server.

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

В допълнение към уеб сървъра, ние се нуждаем система за управление на база данни, индустрията де факто стандарт за дълго време е MySQL, и един от най-скриптови езици за уеб приложения, днес уверено държи палмово PHP. Всички заедно формират класически куп, още по-LAMP-сървър, съкращението означава: Linux - Apache - MySQL - PHP.

За монтажа ще използваме Debian / Ubuntu платформа. Система, в зависимост от освобождаването, различен набор от софтуер, но всички посочени по-долу ще бъде еднакво приложими и да е от тях. Съществуващите различия ще бъдат определени поотделно. По време на това писание, следното пресата съответните системи и версии на софтуера:

  • Debian 8 Джеси: Apache 2.4.10, PHP 5.6.7, MySQL 5.5.43
  • 7 Debian Squeeze: Apache 2.2.22, PHP 4.5.39, MySQL 5.5.43
  • Ubuntu сървър 14.04 LTS: Apache, PHP 2.4.7 5.5.9, MySQL 5.5.43
  • Ubuntu 12.04 LTS: Apache 2.2.22, PHP 5.3.10, MySQL 5.5.43

Всички тези въпроси имат сравнително модерна версия на софтуера, но има някои особености. Така че част от Ubuntu 14.04 и Дебиан 8, Apache 2.4 има достатъчно сериозни различия между Apache 2.2 и не всички CMS (система за управление на съдържанието, "двигатели") и уеб-базирани приложения са в състояние да работят с него, особено в по-старите версии. Например, не можете да използвате Apache 2.4 за уеб достъп до базите данни на 1C: Enterprise. Ето защо, ако решите да изберете версия на 2.4 - съвместимостта Актуализация с нея всички планирани за CMS хостинг и уеб приложения.

В допълнение, MySQL от Ubuntu Server, 12.04 / 14.04 не работи вътре OpenVZ контейнери, които са широко използвани за предоставянето на VPS услуги. Проблемът е решен чрез замяна на MySQL от хранилището версия на MySQL на Общността (фирми) или една от вилиците, например, MariaDB.

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

Инсталиране на Apache

Инсталиране на уеб сървър е много проста:

Ние се създаде уеб сървър на базата на Debian Apache
За Apache 2.4, тя изглежда малко по-различно, но смисълът остава същата.

настройки на сървъра, се съдържат в /etc/apache2/apache2.conf. която свързва допълнителните файлове от директориите, модове, активирани и сайтове-скрипт. В този случай, нищо не ви пречи да направи всички тези настройки директно в apache2.conf - всичко ще работи, но това намалява драстично по-лесното приемане, тъй като тя изисква постоянни промени на основния конфигурационен файл, а настройките в външни файлове лесно се включват и изключват с помощта на специални инструменти.

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

Вече споменахме, в статията на Lighttpd подробности за виртуални хостове, както и местоположението на съдържанието на сайта. всички каза, че е вярно, в нашия случай. Вие сте свободни да изберете някоя оформление на данни, ние предпочитаме да се запази съдържанието на сайтовете, в папката / Var / WWW в името на домейна.

Следващият въпрос да бъде разгледан, е правото на достъп до файлове и папки на сайта. По подразбиране, собственика им трябва да е уеб сървър (потребител и група WWW-данни), в противен случай скриптове могат да работят по неочакван начин или изобщо не. По-удобно и безопасно да тече съдържанието на сайтовете, потребителското име, вместо на уеб сървъра. За да направите това, да инсталирате следните пакети:

В Ubuntu 14.04, може да се натъкнете на грешка по време на инсталацията на този пакет:

Това е известен бъг. за неговото коригиране следва:

Да кажем, че искате да поставите на нашия сървър съдържание на сайта example.com. На първо място, ние създаваме необходимите директории и да ги направи собственик на потребителя, който ще работи със сайта:

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

За Apache 2.4 конфигурационни файлове трябва да имат .conf разширение. така отборът ще бъде, както следва.

Вътре поставете следния текст:

Вътре виртуална секцията домакин намерете друга секция . която включва директивата не се прилага към хоста, и директорията, в този случай, в главната директория на виртуален хост. Има директива Options. който съдържа следните варианти (преди всеки от които е поставен + или - активира или деактивира опцията):

  • ± Включва - активира / дезактивира SSI (Server Side Includes - от страна на сървъра включва) в този случай е изключен поради съображения за сигурност. Има смисъл да се включат само ако вашият сайт е изрично изисква тази опция.
  • ± индекси - Включва / изключва съдържанието на дисплея на дадена директория, без индекс файл е с увреждания от съображения за сигурност.
  • ± ExecCGI - активира / дезактивира изпълнението на CGI скриптове са забранени от съображения за сигурност.

Това е последвано от директивата за AllowOverride. който установява използването на директивите от .htaccess файлове. сървъра по подразбиране поставя тази директива на Няма за / Var / WWW. че забранява използването на .htaccess директиви във всички поддиректории. С цел да се позволи използването на директиви .htaccess зададете тази директива към всички. които позволяват използване в някакви директиви .htaccess.

Този списък с наличните опции (както и директиви) не са изчерпателни, но те са извън обхвата на тази статия и ще бъдат обсъдени в отделна статия. Можете да се запознаете с тях в официалната документация.

Затваряне на откритата част: и . после запишете файла. Конфигурацията на виртуален хост е готова.

За да се даде възможност на сайта е необходимо да се направи символична връзка към конфигурационния файл в директорията сайтове с активирани. и за да се изключи - да се премахне този линк. Това може да стане ръчно, с -s на командата LN, или да използвате специална програма Apache:

Тази команда ще даде възможност на сайта, за да се изключи, тип:

Като опция, екипът прехвърлени на името на конфигурационния файл от сайтовете-достъпни. ако не разширение Apache 2.4. След всяка от тези стъпки, трябва да рестартирате уеб сървъра:

За да проверите работата на виртуален хост, поставете го в главната директория на всички HTML-файл и да се отнасят към сървъра за имена на домейни (домейна протокол трябва да бъде създадена и точката на вашия уеб сървър).

Така например, създаване на индекс файл:

И постави ред в него:

В резултат на това в браузъра, трябва да видите следното:

Инсталиране на PHP

По подразбиране, PHP е инсталиран с основен набор от модули, която отговаря на нуждите на повечето, но сте използвали CMS може да изисква допълнителни модули, които трябва да се инсталира отделно.

Например, за работа с графики, трябва подкрепата на GD2 графичен библиотека. Следователно, задаване на съответния модул:

След това е необходимо да рестартирате вашия уеб сървър:

Между другото, GD2. по наше мнение не най-добрият избор в библиотеката на активите може да се запише ниско потребление на ресурсите и висока скорост на работа, но за качеството на изображения е по-малък алтернативната програма ImageMagick. понякога значително. Така че има смисъл да се определят както от помощната програма и изберете този, който ви подхожда най-много работа. Ако сървъра ресурси позволяват, за предпочитане е да се използват ImageMagick.

Инсталирайте полезността и PHP модул за него:

За да тествате PHP ще създаде в главната директория на сайта на клиента скрипт:

И направи следния текст:

Ние се създаде уеб сървър на базата на Debian Apache

Инсталиране на MySQL

Базата данни MySQL - третата важният компонент от пълноправен уеб сървър, че основната цел на базата данни - информация от местата за съхранение, като потребител и обслужването. На същата база данни относно значението надминава всички други компоненти, като базата данни е равна на загубата от загуба на цялата си информация на ресурсите.

Ще инсталирате сървъра на базата данни и PHP модул за работа с нея:

По време на инсталацията ще бъдете подканени да въведете паролата за корен MySQL (корен), която не трябва да се бърка с кореновата система.

Ние се създаде уеб сървър на базата на Debian Apache
За лесно управление на бази данни смисъл да се монтират PHPMyAdmin - удобен инструмент за управление на уеб сървъра MySQL:

Помощната програма за инсталиране е в състояние автоматично конфигуриране на популярната Apache уеб сървър и Lighttpd. посочите сървъра, на който искам да бъда, когато инсталирате:

Ние се създаде уеб сървър на базата на Debian Apache

В Ubuntu 14.04, ние сме изправени пред един малък проблем, ползата ни информира, че разширяването не Mcrypt намери, въпреки че е уместно PHP модул е ​​инсталиран сред зависимости.

Ние се създаде уеб сървър на базата на Debian Apache

Въпреки това, нищо страшно не се е случило, всичко, което трябва - е да се свържете модула, създаване на символична връзка:

Ние се създаде уеб сървър на базата на Debian Apache

Няма нужда от допълнително инсталиране на MySQL сървър не изисква в полза на UTF-8 кодиране се превърна в де факто стандарт. По принцип това може да бъде завършена, но всички бази данни, хоствани на сървъра ще работят като корен MySQL, че е безопасна. Поради това е необходимо да се създаде база данни на сървъра на базата данни потребител с ограничени привилегии, така че те могат да управляват само техните бази данни.

Отворете PhpMyAdmin, отидете на обезщетения (членове). където ние избираме Добавяне на нов потребител.

Ние се създаде уеб сървър на базата на Debian Apache
Сега превъртете страницата по-долу и изберете опцията да предостави пълни права за обект на база данни на шаблона (потребителско име \ _%)

Това ще даде възможност още веднъж да не се отклоняваме от монтирането на правата, а просто да се създаде база данни с имената на видове или ivanov_base1 petrov_base2. осигуряване на подходящи потребители пълни права за тях, както и принадлежност за бързо идентифициране на база данни. В същото време, тази настройка не е догма, можете да се стигне до вашата преценка. Останалата част е оставена по подразбиране.

За да се създаде база данни тест PHPMyAdmin - База данни - Нова база данни.

Ние се създаде уеб сървър на базата на Debian Apache
При създаване на база данни, обърнете внимание на кодирането. Днес, повечето двигатели и уеб приложения работят с UTF-8 (utf8_general_ci). Въпреки това, по-стари версии на двигателите могат да използват национални кодове, така че трябва да се прави за първи път на етапа на създаване на база данни, в противен случай, залива в базата данни, която е създадена в UTF-8 сметища кодиране Windows-1252, вместо на българските букви в сайта ще бъде "kryakozyabliki".

Ние се създаде уеб сървър на базата на Debian Apache

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

Ние се създаде уеб сървър на базата на Debian Apache

Както можете да видите, добре, пълни права в базата данни се определя в името на потребителя и ползвателя на корен, въпреки че настройките няма достъп при създаване на бази данни, ние не уточни.

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