Apache (Apache HTTP Server), название самого известного и распространенного web-сервера поддерживающего протокол HTTP/1.1. По сути веб-сервер (web-server) это мощная программа, предназначенная для обработки http запроса из адресной строки браузера и возвращения по этому запросу нужных файлов. Если упростить, то веб-сервера позволяют наладить общение между браузером и сервером, по следующей схеме, браузер просит отдать ему файлы сайта по адресу, а веб-сервер ему это отдает. Это очень упрощенно. «Общение» проходит по протоколу HTTP.
Веб-сервера, в том числе Apache, специально разрабатывались для этих целей и не одно программное обеспечение сервера или хостинга не сможет работать без веб-сервера работающего по HTTP протоколу.
Совсем недавно, Apache был практически монополистом для решения своих задач. Сейчас его поджимает, веб-сервер Nignix. Всё чаще используется симбиоз Apache и Nignix.
Не обойтись без веб-сервера и сборки локального сервера. На сегодня, ситуация такова, что Apache используется и больше того, доминирует во всех сборках локальных серверов, как для Windows, так и для Linux.
Для знакомства с веб-сервером Apache стоит ознакомиться, как управляется сервис Apache со стороны клиента.
Вероятно, что именно простота внешнего управления веб-сервисом Apache и сделало его таким популярным (или это одна из причин). Для управления веб-сервисом Apache есть специальный файл, под именем.htaccess (с точкой в начале). По своему функциональному назначению, он похож на файл robots.txt для поисковых роботов. Специальными директивами, записанными в этот файл вы можете, как пользователь, не углубляясь в программное обеспечение сервера, управлять выдачей страниц своего сайта, создавать перенаправления и т.п. Кроме файла.htaccess, для управления Apache есть файл htpasswd (тоже с точкой вначале) и еще модули mod_auth и mod_access.
Но вернемся к локальным серверам. Для установки (создания) локального сервера на свой компьютер без Apache не обойтись. Не в лишний раз напомню, что в аббревиатурах и LAMP, буква [A] это и есть веб-сервер, Apache.
Во всех сборках локальных серверов, таких как, Денвер, Open-server, XAMPP и др. веб-сервер Apache присутствует априори. Если собираем сервер самостоятельно, что мы и делаем, Apache нужно устанавливать самостоятельно.
Развитие Apache шло двумя ветками (версиями) Apache 1.3 и Apache 2.x. Старую версию 1.3 ставить незачем, поэтому работаем с версией 2.x.
Теперь, самое запутанное. Вам знакомо, что почти любую программу можно ставить двумя вариантами:
С Apache ситуация следующая:
На этом всё! Первое знакомство с Apache состоялось. В следующих статьях я расскажу, как установить обе версии Apache на локальный компьютер.
Навигация на сайте Apache веб сервер (http) несколько запутанная, поэтому приведу нужные ссылки:
Когда Вы хотите открыть в своем браузере какой-либо сайт, Вы набираете в адресной строке его адрес. Браузер обращается к серверу и, образно говоря, говорит ему: «Выдай-ка мне вот это сайт!». Web-сервер – это та программа, которая этот запрос принимает и выполняет, отправляя Вам запрошенный сайт.
Исторически сложилось так, что самым популярным web-сервером в интернете стал web-сервер Apache. Существует много различных версий этого сервера, переделанных под разные задачи.
Управление Apache осуществляется путем добавления в файл.htaccess специальных директив. По сути дела, инструкций, говорящих web-серверу как поступать в той или иной ситуации. Файл – это обычный текстовый файл, который можно либо создать непосредственно на сервере, используя, к примеру, текстовый редактор vi, либо создать у себя на компьютере и закачать на сервер по протоколу FTP .
Для того, чтобы при обращении к защищенной директории web-сервер Apache спрашивал пароль, нужно в эту директорию поместить файл , в котором прописать следующие директивы:
Файл паролей.htpasswd – это обычный текстовой файл. Каждый пользователь описан в нем одной строкой вида логин:шифрованый_пароль. Для шифрования паролей используется специальная программа htpasswd. Обратите внимание, в файл нельзя просто вручную записать пароль, пароль обязательно должен быть зашифрован программой htpasswd.
Если файл.htpasswd еще не существует, программа htpasswd должна быть запущена с ключом -c:
htpasswd -c /полный_путь_к_файлу/.htpasswd логин_пользователя
Пример: htpasswd -c /home/test/www/site1/public_html/.htpasswd vasya
При этом программа htpasswd создаст файл.htpasswd, запросит пароль для пользователя и создаст запись о пользователе с указанными логином и паролем в этом файле. При добавлении следующих пользователей и изменении паролей уже существующих программа вызывается подобным же образом, но без указания ключа -c. Для удаления пользователя достаточно открыть файл.htpasswd обычным текстовым редактором и удалить строчку с его логином и паролем.
Если тарифный план не предусматривает доступ по SSH (доступ к командной строке сервера), то для создания файла.htpasswd можно воспользоваться специальной windows-программой. Для этого, нужно скачать дистрибутив, распаковать его и запустить программу passwd.exe. После этого в окне по закладке «Single Password» с помощью кнопки «Browse» задать имя файла (обычно это.htpasswd), а в верхней части окна ввести имя пользователя, пароль и нажать кнопку «Encode and Save». После этого полученный файл необходимо закачать по протоколу FTP в нужную директорию на нашем сервере.
Apache HTTP-сервер - это так называемый свободный веб-сервер, представляющий собой кросплатформенное программное обеспечение. Apache поддерживает следующие операционные системы: BSD, Microsoft Windows, Linux, Mac OS, BeOS, Novell NetWare.
Обычно настройка Apache-сервера происходит через файл.htaccess (детальная инструкция). Этот файл лежит на сервере, на котором находится ваш сайт. А сам сервер считывает его содержимое и применяет настройки, которые там указаны. Ниже мы перечислим основные параметры которые изменяются в файле.htaccess и будут полезны для вебмастеров.
Надежность и гибкость конфигурации главные достоинства Apache. Благодаря этому ПО можно осуществлять подключение внешних модулей, использующихся для предоставления данных, модифицировать сообщения об ошибках, применять СУБД для аутентификации пользователей. Apache поддерживает IPv6.
Начиная с апреля 1996 года и до настоящего времени Apache является самым распространенным и популярным HTTP-сервером в сети Интернет. Согласно статистическим данным в августе 2007 HTTP-сервером работал на 51% всех веб-серверов, в мае 2009 года этот показатель снизился до 46%, а в январе 2011 года вырос до 59%. На сегодняшний день более 59% от общего количества веб-сайтов обслуживаются веб-сервером Apache. Разработкой и поддержкой Apache занимаются специалисты открытого сообщества разработчиков под эгидой Apache Software Foundation. Apache включен в большинство программных продуктов, среди которых IBM WebSphere и СУБД Oracle.
Apache оснащен встроенным механизмом виртуальных хостов. Благодаря этому на одном IP-адресе можно обслуживать большое количество веб-проектов (доменных имен), при этом отображая для каждого из них свое содержимое. Для каждого виртуального хоста имеется возможность указать свои настройки модулей и ядра, а также установить ограничения к доступу ко всему сайту либо некоторым файлам. С помощью Apache-ITK для каждого виртуального хоста можно запускать процесс httpd с идентификаторами gid и uid. Также есть модули, которые позволяют ограничивать и учитывать ресурсы сервера (трафик, RAM, CPU) отдельно для каждого виртуально хоста.
Web-сервер – это сервер, являющийся местом хранения страниц вебсайта вместе с базами данных и различными программными модулями сайта, это основополагающий элемент в работе всех web-ресурсов, хранящихся на нем. Но сама по себе ОС сервера не будет обеспечивать функционирование вебсайта, необходимо определенное программное обеспечение, которым и является программный веб-сервер Apache.
Этот web-сервер был разработан в начале 90-ых годов и был предназначен для работы на платформе ОС Linux и Unix. Со временем, список поддерживаемых операционных систем значительно расширился. В настоящее время, web-сервер Apache функционирует на платформе ОC Windows, Mac OS, BSD, Linux, OS/2 и Novell NetWare. Веб-сервер имеет широкий набор расширений для работы с многими языками web-программирования:
Дополняют функционал Apache многие разработчики по всему миру, но разработкой ядра веб-сервера занимаются только специалисты Apache Software Foundation. Например, русские специалисты занимаются разработкой расширения для легкой восприимчивости Apache к русскоязычной кодировке. Apache можно использовать как на web-сервере, работающем в глобальной сети, так и для локального использования, чтобы тестировать разрабатываемые вебсайты.
Apache является самым распространенным веб-сервером, установленным на больше чем половине хостов по всему интернету. Главным образом, этому способствовало:
Веб-сервер – программа, которая запущена на локальной или удаленной машине, и главное её предназначение – позволять пользователю просматривать веб-документы. Когда в адресной строке вводится адрес сайта, при нажатии клавиши Enter браузер формирует некий запрос, направленный удаленному компьютеру - веб-серверу.
Apache HTTP-сервер (сокращение от англ. a patchy server ) – одна из наиболее популярных и распространенных программ, созданных для веб-разработчиков и администраторов интернет-ресурсов. По данным независимых исследователей, Apache установлен на 50% компьютеров всех пользователей HTTP-серверов.
Главными преимуществами Apache являются стабильность, быстродействие и гибкость, и обусловлены они модульной организацией, а также тем, что разработку ведёт открытая группа программистов, хоть и под официальным названием Apache Software Foundation .
Apache поддерживает огромное количество операционных систем и аппаратных платформ, и довольно часто его используют под управлением операционной системы Windows. Немаловажно и то, что данный web-сервер распространяется совершенно бесплатно.
О том, как установить сервер Apache для операционной системы Windows 7, пойдет речь в данной статье.
В первую очередь необходимо скачать последнюю версию дистрибутива Apache без поддержки SSL и запустить установку. В приветственном окне нужно кликнуть на «Next », прочесть лицензионное соглашение разработчика и подтвердить свое согласие с ним.
Если все прошло успешно, в трее должен появиться значок управления веб-сервером Apache. Остановить и перезагрузить его можно, кликнув на значке левой кнопкой мыши.
Хоть Apache и является весьма удобным и исключительно надёжным, не все готовы его использовать как локальный сервер по ряду причин, и основная - отсутствие даже в среде Microsoft Windows какого-либо графического конфигуратора, что довольно непривычно для большинства пользователей.
Настройка сервера производится с помощью ручного редактирования конфигурационного файла httpd.conf . Однако, вопреки представлениям о непонятности и сложности данного процесса, ничего сложного в данной операции нет по двум причинам: во-первых , для того, чтобы сделать из только что установленного Apache сервер, который настроен для приемлемой и комфортной работы, в файле конфигурации нужно поменять совсем немного данных, а во-вторых - комментарии httpd.conf содержат немало полезной информации, необходимой для того, чтобы разобраться с настройкой.
Что необходимо?
Чтобы успешно решить эти проблемы, зайдите в папку с установленным Apache, найдите и откройте в подпапке conf файл httpd.conf . Обратите внимание, что строки, начинающиеся с «решётки », являются текстовыми комментариями, а в качестве настроек веб-сервера использованы строки, в начале которых значок «решётки » отсутствует.
Для начала нужно выполнить настройку той директории, которая будет использоваться сервером в качестве папки веб-сайта. Найдите в тексте строку, которая начинается с DocumentRoot . Данная директива определяет, какая папка будет являться корневой.
Исправьте её на DocumentRoot “C:/www ”. Следует уточнить, что слэши в этом файле должны быть наклонены вправо, а не влево, как, вероятно, уже привыкли пользователи Windows. После вышеуказанных манипуляций, проблема с месторасположением вашего сайта решена.
Options. Возможны следующие варианты:
AllowOverride. Варианты:
Order. Варианты:
На основе всего вышесказанного, попробуйте настроить ваш сервер. В файле httpd.conf
директива Directory по умолчанию существует сразу в двух экземплярах -
Говоря другими словами, для папки C:/www и всех её подпапок выбраны следующие параметры:
Теперь, сохраните файл httpd.conf и перезапустите Apache с помощью Apache Monitor либо командой apache –k restart в командной строке. Настройка корневой папки сайта закончена.
Следует проверить, правильно ли вы всё сделали. Создайте простейшую веб-страницу в папке C:www, откройте ваш браузер и введите http://127.0.0.1/ваша_созданная_страница . Страницы должна открыться. В ином случае необходимо тщательно проверить все изменения в файле httpd.conf на правильность.
Если страница успешно открылась, есть вероятность, что вместо кириллических символов вы увидите нечитаемые символы. Отображаться они могут по двум причинам. Во-первых , веб-сервер предоставляет вашему браузеру, который запросил страницу, кодировку по умолчанию. Во-вторых , как ни странно, кодировка эта кириллической не является.
Если пресловутый Internet Explorer в подобных случаях определяет кодировку из самой страницы, то, к примеру, Mozilla Firefox и Opera к подобным действиям склонности совершенно не имеют, и способ выставления кодировки в браузере вручную едва ли можно назвать удобным. Следовательно, необходимо настроить Apache на выдачу по умолчанию необходимой кодировки.
Найдите в файле httpd.conf строку, которая начинается на AddDefaultCharset . Скорее всего, там указана кодировка ISO-8859-1, в которой отсутствуют кириллические символы. Поменяйте ISO-8859-1 на windows-1251 , сохраните файл и перезапустите Apache. Теперь корректное отображение русского языка на вашем сайте будет работать в любом браузере.
В сервере Apache достаточно просто настроить работу с несколькими сайтами. Адреса, которые можно использовать для них - 127.0.0.2, 127.0.0.3 и т.д. При этом по сети виден будет только тот, который является сайтом по умолчанию (127.0.0.1), однако для локальной работы это не является критичным. Раздел файла httpd.conf , в котором производится настройка всего необходимого для этого, находится в самом конце и именуется VirtualHosts .
Для того чтобы добавить дополнительный сайт, создайте директорию, использующуюся в качестве его корневой, к примеру, C:www2 . Предположив, что сайт будет откликаться на адрес 127.0.0.2 , дайте ему имя site911 и в самом конце раздела VirtualHosts добавьте следующие строки:
Перезапустите сервер Apache. Набрав в адресной строке браузера 127.0.0.1 , вы попадёте на ваш первый локальный сайт, а набрав 127.0.0.2 – на второй локальный сайт. Следует иметь в виду, что внутри каждого контейнера VirtualHosts могут использоваться абсолютно любые директивы веб-сервера Apache, благодаря чему можно каждый сайт настраивать наидетальнейшим образом.
Установка и настройка завершена, и теперь вы можете полноценно приступить к изучению работы сервера Apache на практике.
Если же вы решили вплотную заняться администрированием веб-сайтов, следующим вашим шагом должно стать изучение связки Apache PHP MySQL, ведь без системы управления базами данных, а также без поддержки одного из самых распространенных языков веб-программирования и веб-инструмента для администрирования системы MySQL не обходится ни один сервер на просторах всемирной сети. Как говорится, «тяжело в учении, но легко в бою ».
Желаем удачи в изучении этого нелёгкого, но интересного дела!
Хорошо Плохо