Что такое Apache? Свободный веб-сервер Apache HTTP Server

Обсудить Редактировать статью
 

Apache - мощный сервер, название которого происходит от английской фразы, связанной с названием племени североамериканских индейцев апачей. Среди русских пользователей имеет распространенное название «Апач». Это ПО с открытым исходным кодом с лицензией GPL. Одним из самых больших преимуществ его является кроссплатформенный сервер, то есть он может работать с различными операционными системами, поддерживая отличную производительность.

С 1996 года - это самый популярный сервер в мире благодаря его стабильности и безопасности. «Апач» разрабатывается сообществом пользователей-разработчиков, которое работает под руководством Apache Software Foundation.

История Apache

История Apache

В марте 1989 года Тим Бернерс Ли, английский ученый, работающий в CERN (Швейцария), предложил новый способ управления огромным количеством информации в проектах CERN. В то время никто не знал, что такое Apache. Первичная разработка сети документов с гиперссылками, как их назвал Тед Нельсон в 1965 году, привела к созданию WWW - первого программного обеспечения, которое вышло в ноябре 1990 года под названием World Wide Web, с веб-браузером, графическим интерфейсом и редактором WYSIWYG. Два года спустя в списке WWW-серверов было всего около тридцати записей, среди которых был HTTPs NCSA.

Настоящая история «Апач» начинается в марте 1995 года с выпуском Apache 0.2 на основе сервера NCSA HTTPD 1.3. Многим пользователям интересно знать, что такое Apache сегодня и что программа представляла из себя в первые месяцы своего существования. Это был всего лишь набор правок, применяемых к серверу NCSA. Далее Роберт Тау выпустил Shambhala 0.1 с API для модулей, которые оказались очень успешными.

Крупнейшими вехами проекта было полное соответствие стандарту HTTP 1.1, включенному в апреле 1997 года в версию 1.2. В эту версию уже была включена платформа Windows NT, которая стартовала в июле 1997 года. Объединение файлов конфигурации было реализовано в выпуске 1.3.3.

Apache Group отвечает за эволюцию веб-сервера и конкретные решения по разработке. Эту группу следует отличать от разработчиков ядра - Core group. Добровольный характер большинства разработчиков делает маловероятным то, что все они одновременно активны в «Апач», поэтому ядро отвечает за постоянную работоспособность. В общем, решения, которые должны принимать разработчики, принадлежат ядру и ограничиваются голосованием за включение кода. С другой стороны, они обычно имеют право на запись в репозиторий CVS, поэтому служат воротами для кода, обеспечивая его правильность и качество.

Минимальные требования и преимущества

Apache получил широкое признание в сети, с 1996 года он является наиболее часто используемым HTTP-сервером. Достигнул своей максимальной доли рынка в 2005 году, когда сервер использовался на 70 % сайтов во всем мире. В последние годы его доля на рынке сократилась. Примечательно то, что для Apache такой спад не свидетельствует о непопулярности и деградации технологии.

Минимальные требования для эксплуатации:

  1. Процессор – Pentium.
  2. Оперативная память - 64 Мб.
  3. ОС-Microsoft Windows, GNU/Linux.
  4. Размер установки- 50 Мб.

Преимущества:

  1. Модульная конструкция.
  2. Открытый исходный код.
  3. Мультиплатформенная конструкция.
  4. Растяжимость.
  5. Популярность - легко получить помощь и поддержку.

Архитектура сервера

Архитектура сервера

Модульный сервер «Апач» состоит из основного раздела и различных модулей, предоставляющих большую часть базовых функций. Некоторые из этих модулей:

  1. mod_ssl - безопасная связь через TLS;
  2. mod_rewrite - перезапись адреса, обычно используется для преобразования динамических страниц, таких как php, в статические, чтобы обмануть поисковые системы относительно того, где они были разработаны;
  3. mod_dav - поддержка протокола WebDAV (RFC 2518);
  4. mod_deflate - алгоритм сжатия прозрачен, когда содержимое отправляется клиенту;
  5. mod_auth_ldap - позволяет пользователям проходить аутентификацию на сервере LDAP;
  6. mod_proxy_ajp - соединитель для связи с Jakarta Tomcat динамических страниц в Java (сервлеты и JSP).

Базовый сервер может быть расширен за счет включения внешних модулей, среди которых:

  • mod_cband - управление трафиком и ограничение полосы пропускания;
  • mod_perl - динамические в Perl;
  • mod_php - динамические в PHP;
  • mod_python - динамические в Python;
  • mod_rexx - динамические в REXX и объект REXX;
  • mod_ruby - динамические в Ruby;
  • mod asp dot net - динамические в Microsoft.NET;
  • mod_mono - динамические в моно;
  • mod_security - фильтрация на уровне приложения для безопасности.

Конфигурация и безопасность

Конфигурация и безопасность

Для того чтобы понять, что такое Apache в свете безопасности, нужно рассмотреть его конфигурацию. Большая часть конфигурации выполняется в файле apache2.conf и httpd.conf, в зависимости от системы, в которой ПО работает. Любое изменение этого файла требует перезапуска сервера или повторного принудительного чтения.

Лицензия на программное обеспечение, по которой распространяется базовое ПО «Апач», является отличительной частью истории Apache HTTP Server и сообщества открытого исходного кода. Лицензия позволяет распространять продукты с открытым и закрытым исходным кодом.

Фонд свободного ПО не считает таковым Apache License, совместимого с версией 2 GNU General Public License (GPL), в которой программное обеспечение лицензируется и не интегрировано с ПО. Это нужно учитывать, перед тем как настроить веб-сервер Apache, распространяемого под лицензией GPL. Тем не менее версия 3 GPL включает в себя положение, которое позволяет ему быть совместимым с лицензиями, имеющими оговорки о патентном возмещении.

Большинство обнаруженных и устраненных уязвимостей безопасности могут быть использованы только локальными пользователями, а не удаленно. Однако некоторые все же запускаются удаленно в определенных ситуациях. Или если они используются злонамеренными локальными пользователями для нарушения соглашений о совместном хостинге, использующего PHP в качестве модуля свободного веб-сервера Apache.

Проверка функционирования Апач

Проверка функционирования Апач

Чтобы убедиться, что «Апач» работает правильно, открывают веб-браузер и прописывают следующий адрес: http: // localhost. Затем нажимают Enter, появляется белая страница с сообщением «Это работает», что является доказательством того, что веб-сервер работает отлично.

«Апач» позволяет создавать специальные конфигурации для настройки и адаптации к потребностям. Для этого находят файл http.conf в C: appserv Apache2.2 conf. Создается его резервная копия, чтобы избежать ошибок выполнения, затем его открывают посредством любого редактора и изменяют нужные строки.

Чтобы правильно выполнить эти действия, нужно хорошо знать Apache worker, поскольку любые сделанные изменения будут отражены в производительности и запуске «Апач». Благодаря последним рекомендациям сервер будет установлен. Работать он будет в базовой конфигурации, которая позволяет загружать страницы или сетевые приложения в интернет.

Управление информацией

Управление информацией

Apache - наиболее используемый веб-сервер, лидер с наибольшим количеством установок в мире, намного опережающий другие решения, такие как Microsoft Internet Information Server (IIS). Этот проект открыт для использования, так как он мультиплатформенный, имеющий версии для всех основных операционных систем, очень надежный и выделяющийся своей безопасностью и производительностью.

Компьютер, на котором это ПО работает, получает то же имя. Это имеет решающее значение, поскольку отвечает за прием запросов на страницы, поступающих от посетителей, которые получают доступ к сайту и управляют их доставкой или отказом в соответствии с установленной политикой безопасности. Несмотря на то что этот процесс может показаться простым, он включает в себя множество аспектов и функций, которые необходимо выполнить:

  1. Эффективность запросов.
  2. Большое количество HTTP-запросов, включая многозадачное выполнение, может оставить сервис свернутым.
  3. Ограничения на доступ к файлам, управления аутентификации пользователей или фильтрации запросов в соответствии с их происхождением.
  4. Обработка ошибок по страницам с информацией посетителя и перенаправлением на заранее определенные страницы.
  5. Управление информацией, подлежащей передаче в соответствии с ее форматом, и адекватное информирование браузера, запрашивающего указанный ресурс.
  6. Журнал управления для хранения полученных запросов, произошедших ошибок и в целом всей информации, которая зарегистрирована и проанализирована для получения статистики доступа к сайту.

«Апач» позволяет настраивать виртуальный хостинг на основе IP-адресов или имен, то есть иметь несколько веб-сайтов на одном компьютере.

Файл apache2.conf

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

Он находится в каталоге /etc /apache2, и, поскольку это текстовый файл, его можно легко редактировать с помощью текстового редактора. Свойства файла конфигурации - глобальные переменные сервера и расширение функциональности.

Глобальные переменные сервера - это переменные, которые определяют общее функционирование:

  1. Таблица директив «Апач». Имя сервера обозначено переменной ServerName, поэтому любое перенаправление или ссылка, существующие в HTML-документах, работают хорошо. Большинство переменных конфигурации распределены среди других небольших файлов, хранящихся в mods-available.
  2. .htaccess - это скрытый текстовый файл, который позволяет настроить работу сервера.
  3. «Апач» - конкретный каталог без необходимости изменять основной файл конфигурации apache2.conf. Когда веб-клиент запрашивает файл с сервера, он смотрит из корневого каталога в подкаталог, содержащий запрошенный для .htaccess, и принимает во внимание содержащиеся в нем директивы перед выполнением запроса.

Принцип .htaccess:

  1. Запрещает перечисление файлов в каталоге.
  2. Перенаправляет веб-трафик.
  3. Настраивает страницы ошибок.
  4. Ограничивает доступ к определенным файлам.
  5. Запрещает доступ к определенным IP-адресам или диапазонам IP-адресов.
  6. Расширяет функциональность, что связано с вызовами других модулей и файлами конфигурации. Всем директивам, связанных с этим пунктом, будет предшествовать слово «Включить».

Установка веб-сервера Apache

Установка веб сервера Apache

«Апач» изначально был разработан для работы с технологией PHP, но без проблем может работать и с .NET, что делает его более успешным по сравнению с IIS Microsoft, являющимся коллаборантом для серверов, использующих IIS, и обеспечивающим полную поддержку PHP без необходимости изменять конфигурацию.

Чтобы установить и запустить веб-сервер, в первую очередь необходимо загрузить его с официального сайта. Всегда находят самую последнюю версию доступного программного обеспечения и проверяют, будет ли она идентифицирована, как Win32 Binary, включая OpenSSL.

Версия имеет встроенную установку и систему защиты данных. После выбора ее загружают на ПК. Дважды нажимают по значку файла, чтобы запустить процесс, который прост, так как сопровождаться помощником.

Одним из первых окон, в котором будет предоставлена необходимая информация, чтобы веб-сервер мог подключиться к сети, является информационное окно. Там пользователь заполняет небольшую форму, добавив имя сетевого домена, имя сервера и адрес электронной почты администратора. Для первых двух вариантов выбирают localhost.

Далее появится окно установки, где указаны все доступные компоненты. Выбирают их все и проверяют, наличие папки c: appserv Apache2.2. Далее выполняют настройку веб-сервера Apache.

Веб-Monitor на панели задач

После установки Apache убеждаются, что она была выполнена правильно. Для этого переходят в меню «Пуск» и находят опцию «Выполнить». Появится всплывающее окно, в котором вводят cmd, возникает всплывающий экран системы. Чтобы убедиться, что пользователь работает в качестве администратора, нажимают правой кнопкой мыши по окну и выбирают «Выполнить от имени администратора».

Алгоритм установки:

  1. В консоли Windows находят папку bin Apache, для этого прописывают следующее предложение в консоли - c: appserv Apache2.2? in.
  2. После ввода нажимают Enter и системный компонент, который будет выглядит так - C: appserv Apache2.2? In>.
  3. Находясь в папке bin, вводят http: .exe -k install и нажимают Enter.
  4. Появиться сообщение, похожее на «.Apache 2.2: служба уже установлена». Это сообщение проверит, что «Апач» был успешно установлен.

Один из наиболее эффективных способов проверить правильность работы Apache - установить, активен ли монитор приложения. Его можно увидеть на панели задач. Если он неактивен, активируют его, переходя в меню «Пуск», раздел «Все программы» и Apache http Server 2.2., нажимают на Monitor Apache Server и активируют его.

Монитор полезен, потому что он позволяет останавливать сервер, приостанавливать и активировать его с полным комфортом, не заходя в окно консоли, просто нажав на значок на панели задач, чтобы открыть окно управления.

Советы по установке в Linux

Советы по установке в Linux

Если у пользователя есть сайт и нужна платформа для его размещения, можно воспользоваться услугами одного из хостинг-провайдеров либо попробовать самостоятельно разместить свой сайт на сервере.

Алгоритм установки:

  1. Скачивают последнюю стабильную версию «Апач».
  2. Загружают исходные файлы, соответствующие системе.
  3. Извлекают файлы ПО.
  4. После того загруженные файлы нужно будет распаковать:gunzip -d httpd-2_0_NN.tar.gz; tar xvf httpd-2_0_NN.tar.
  5. Это создает новый каталог в текущем каталоге с исходными файлами.
  6. Как только появятся файлы, указывают машине, где найти все исходные. Самый простой способ сделать это - принять все значения по умолчанию и просто набрать: ./configure.
  7. Настраивают Apache при условии, что не было никаких проблем с установкой и сборкой. Пользователь настраивает конфигурацию, что равносильно редактированию файла httpd.conf. Он обычно редактируется с текстовым редактором- vi PREFIX /conf/httpd.conf. Для внесения любых изменений нужно быть пользователем root.
  8. Проверяют работу сервера.

Применение в World Wide Web

Применение в World Wide Web

Apach используется в основном для отправки статических и динамических страниц в World Wide Web. Многие приложения разработаны с учетом среды реализации «Апач» или будут использовать характеристики этого сервера. Apach - компонент сервера в популярной платформе приложений LAMP наряду с языками программирования MySQL и PHP, Perl , Python и Ruby, включая базу данных Oracle и сервер приложений IBM WebSphere. Mac OS X интегрирует его как часть собственного web-server и поддержку приложений WebObjects.

Apache используется для многих других задач, когда контент должен быть доступен безопасным и надежным способом. Например, при совместном использовании файлов с персонального компьютера в интернет. Пользователь, у которого на рабочем столе установлен «Апач», может произвольно размещать файлы в корне документов, откуда они могут стать общими.

Разработчики веб-приложений иногда используют локальную версию Apache для предварительного просмотра и тестирования кода во время разработки. Microsoft Internet Information Services (IIS) является основным конкурентом «Апач», а также веб-сервером Sun Java System от Sun Microsystems и множеством других приложений, таких как Zeus Web-Server.

Некоторые из крупнейших сайтов в мире работают на Apache. Внешний интерфейс поисковой системы Google основан на ее модифицированной версии, которая называется Google веб-сервер (GWS). Многие проекты "Википедии" также работают на серверах «Апач».

Статья закончилась. Вопросы остались?
Добавить смайл
  • :smile:
  • :wink:
  • :frowning:
  • :stuck_out_tongue_winking_eye:
  • :smirk:
  • :open_mouth:
  • :grinning:
  • :pensive:
  • :relaxed:
  • :heart:
Подписаться
Присылать на почту
Правила публикации
Следят за новыми комментариями — 6
Редактирование комментария возможно в течении пяти минут после его создания, либо до момента появления ответа на данный комментарий.