Apache настройка: Как установить и настроить веб-сервер Apache

Содержание

Что такое Apache сервер, как установить, настроить и запустить апаче

В этой статье мы простым языком объясним, что такое apache сервер, как правильно его настроить и использовать. На сегодняшний день это один из самых востребованных видов программного обеспечения, которое отвечает за отображение информации на сайте. Поэтому с ним сталкивается каждый веб-разработчик.

Что такое Apache и зачем он нужен

Apache часто называют веб сервером. Но корректнее назвать его программным обеспечением для развертывания веб сервера.

Этот продукт создавался в качестве усовершенствованной модификации другого HTTP-клиента. Разработчики вносили в него доработки и улучшения. Их называют патчи, что в переводе означает «заплатки». Эти части кода автоматически устраняют недочёты общего кода. Когда их объединили, появился новый, уникальный IT-продукт с модульной структурой.

Чтобы понять, для чего нужен apache, вспомним, как протекает процесс открытия сайта.

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

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

Условно можно выделить 4 ключевые задачи из тех, что делает apache.

  • Способствует повышению скорости открывания динамических PHP-страниц.
  • Распределяет нагрузку на сервер.
  • Повышает отказоустойчивость сервера.
  • Помогает настроить сервер при запуске PHP-скриптов.

Архитектура Apache

Apache состоит из ядра и модулей, а его параметры можно изменить, корректируя конфигурационные файлы.

Ядро нужно, чтобы обрабатывать конфигурационные файлы, протокол HTTP/HTTPS и загружать модули. Оно способно функционировать само по себе, без подключения модулей, однако в этом случае функционал будет сильно ограничен.

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

Модули бывают двух основных видов.

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

Для апаче уже созданы сотни модулей. А некоторые приложения сразу пишутся в виде модулей для удобного использования.

Конфигурация Apache

Система конфигурации Apache базируется на содержащих настройки текстовых файлах и состоит из трёх уровне.

  • Конфигурация сервера – файл httpd.conf. Это главный конфигурационный файл, охватывающий полностью механизм веб-сервера.
  • Каталог – файл .htaccess. Это второстепенный конфигурационный файл, так как его директивы действуют исключительно в каталоге, где файл находится, а также его подкаталогах.
  • Виртуальный хоста – файл httpd.conf> или extra/httpd-vhosts.conf. Действуют только в конкретном каталоге и его подкаталогах.

Если интересуетесь, как настроить apache, то ищите нужные файлы в папке «conf» и вложенной в неё папке «extra». Редактирование осуществляется в самом файле или командной строке.

Плюсы и минусы Apache

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

Любое соединение с сервером образует индивидуальный поток.

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

Возвращаясь к Apache, второе соединение невозможно до тех пор, пока первое не будет завершено.

Такой подход имеет один серьёзный недостаток – повышенную вероятность перегрузки. Число потоков не бесконечно. И когда пользователей становится много, работоспособность программного обеспечения снижается.

Кроме того, доступность системы становится её недостатком. Ведь злоумышленники тоже могут создать свой модуль или прошить в нём вредоносный код, вирусы. Чтобы избежать проблем, важно внимательно выбирать модули, которые планируете использовать. Ставьте их только в том случае, если уверены в разработчиках и доверяете им.

Иногда лишних модулей слишком много. Для быстрой и удобной работы их приходится отключать вручную.

Зато у него много достоинств.

  • Бесплатное использование, в том числе для коммерческих целей.
  • Открытый исходный код, благодаря которому он легко адаптируется под индивидуальные требования пользователей.
  • Совместимость с различным серверным программным обеспечением за счёт поддержки множества языков программирования.
  • Простая и удобная настройка apache с возможностью масштабирования.
  • Совместимость с разнообразными CMS.
  • Поддержка технологий FastCGI и CGI.
  • Возможность применения СУБД для аутентификации пользователей.
  • Обширная база знаний. Так как работа над данным IT продуктом началась ещё в 1998 году, за время его существования было создано огромное количество инструкций под самые разнообразные ситуации.

Альтернативы Apache

Исходя из плюсов и минусов Apache, можно сделать вывод, что при повышенных нагрузках на сервер он вызывает торможение. Когда он только появился, был уникальным и функциональным продуктом.

Сейчас для широкого перечня задач существуют более практичные альтернативы, у которых системные требования ниже. Рассмотрим самые известные из них.

  • Nginx. Прекрасный вариант для отображения статичного контента. Может использоваться как HTTP и обратный прокси-сервер, почтовый прокси-сервер.
  • XAMPP. Удобный бесплатный дистрибутив Apache, в котором содержатся MariaDB, PHP и Perl.
  • Serva 32/64. Автоматизированный сервер PXE Solution Solution Accelerator. Принцип его работы базируется на портативном многосерверном механизме со множеством протоколов.
  • Lighttpd. Веб сервер создавался специально для использования в проектах, требовательных к скорости передачи данных.
  • Caddy. Расширяемый кроссплатформенный веб-сервер с открытым исходным кодом.
  • Tomcat. Контейнер сервлетов для обработки спецификации Java.
  • Microsoft IIS. Набор сервисов с целью глубокой интеграции и поддержки продуктов Microsoft.
  • Apache kafka – стриминговая платформа для хранения, обработки и доставки большого объёма данных в реальном времени.

На самом деле список очень длинный. При желании можно подобрать оптимальное решение для конкретной задачи.

Как установить apache

Установка apache возможна на операционной системе windows и linux. Инструкция несложная.

Скачайте последнюю версию дистрибутива. Откройте файл, примите лицензионное соглашение. Затем в открывшейся форме заполните все поля с указанием действующего адреса электронной почты.

В следующем окне нужно выбрать пункт «Custom» и нажать «далее».

Создайте и выберете соответствующую папку для установки. Нажмите «Install», а после завершения процесса «Finish».

Как запустить apache

На нижней панели управления появится иконка веб сервера.

Если кликнуть по нему правой кнопкой мыши, откроется доступ к системным службам. Это и есть ответ на вопрос, как включить apache. Всё очень просто.

Как повысить производительность apache

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

В Ubuntu они расположены в каталоге /etc/apache2/sites-available внутри файла 000-default.conf.

В первой строке указана директива с параметром 80. Это используемые IP-адрес и порт.

В строчке №3 «ServerAdmin» нужно указать актуальный e-mail. В строчке №4 «DocumentRoot» содержится доступ к файловой системе, корневой каталог. Важно проконтролировать, чтобы он не заканчивался символом «/». В строке №8 «VirtualHost» указан файл, где сохраняются ошибки apache. В строке №9 «CustomLog» применяется для регистрации запросов.

Чтобы добавить ещё один виртуальный хост, необходимр создать каталог, для использования в качестве document root, а также базовую страницу – именно её увидит пользователь, когда откроет сайт.

Файлы виртуальных хостов хранятся в каталоге /etc/apache2/sites-available.

В минимальной конфигурации появится ещё одна директива «ServerName», определяющая виртуальный хост. Файл нужно сохранить как example.conf.

Затем введите команду «a2ensite» для формирования символической ссылки в каталог. Перезагрузите конфигурацию сервера.

Как проверить apache

Важно добавить запись в файл /etc/hosts того устройства, с которого выполняется связь с сайтом.

$ sudo echo “192.168.122.241 www.example.local” >> /etc/hosts

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

Заключение

Apache – практичное решение для быстрого запуска сайтов. Он совместим с внушительным списком IT продуктов и языков программирования, за счёт чего имеет гибкие возможности для расширения функционала.

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

  

Туториал: как использовать apache

Установка и настройка сервера Apache

Apache — это популярнейший свободный веб-сервер. Состоянием на 2020 год он используется на 33% всех сайтов интернета, а это приблизительно 304 миллиарда сайтов. Этот веб-сервер был разработан в далеком 1995, как замена для популярного того сервера NCSA и исправил множество его проблем. Ходят слухи что его имя походит от a patchy, заплатка, так как он исправлял ошибки NCSA. Сейчас же, это кроссплатформенная программа, поддерживающая Windows, Linux и MacOS и обеспечивающая достаточную гибкость, настраиваемость и функциональность. Программа имеет модульную структуру, что позволяет расширять ее функциональность почти до бесконечности с помощью модулей.

Установить Apache в Linux можно с помощью нескольких команд, но программа предоставляет очень большое количество настроек, которые можно изменить, а также модулей, после включения которых она будет работать лучше. В этой статье будет рассмотрена установка и настройка Apache, в качестве основной системы мы будем использовать Ubuntu, но вы можете повторить эти действия в любом другом дистрибутиве. Будет рассмотрена не только установка самой программы, но и способы ее настройки, настройка виртуальных хостов apache, а также самые полезные модули.

Содержание статьи:

Установка Apache

На данный момент, самая новая версия программы 2.4 поэтому и будет рассмотрена настройка apache 2.4. Как я уже говорил, в Linux программа устанавливается буквально в пару команд. Для установки в Ubuntu сначала обновим систему до самой новой версии:

sudo apt update
sudo apt upgrade

Затем установка apache2:

sudo apt install apache2

В других дистрибутивах пакет программы называется либо так, либо httpd и его установка у вас не вызовет трудностей.

После завершения установки нужно добавить веб-сервер в автозагрузку, чтобы не запускать его вручную после включения компьютера:

sudo systemctl enable apache2

Настройка Apache

Уже прошло то время, когда конфигурация Apache хранилась в одном файле. Но оно и правильно, когда все распределено по своим директориям, в конфигурационных файлах легче ориентироваться.

Все настройки содержатся в папке /etc/apache/:

  • Файл
    /etc/apache2/apache2.conf
    отвечает за основные настройки
  • /etc/apache2/conf-available/* — дополнительные настройки веб-сервера
  • /etc/apache2/mods-available/* — настройки модулей
  • /etc/apache2/sites-available/* — настойки виртуальных хостов
  • /etc/apache2/ports.conf — порты, на которых работает apache
  • /etc/apache2/envvars

Как вы заметили есть две папки для conf, mods и site. Это available и enabled. При включении модуля или хоста создается символическая ссылка из папки available (доступно) в папку enable (включено). Поэтому настройки лучше выполнять именно в папках available. Вообще говоря, можно было бы обойтись без этих папок, взять все и по старинке свалить в один файл, и все бы работало, но сейчас так никто не делает.

Сначала давайте рассмотрим главный файл конфигурации:

vi /etc/apache2/apache2.conf

Timeout — указывает как долго сервер будет пытаться продолжить прерванную передачу или прием данных. 160 секунд будет вполне достаточно.

KeepAlive On — очень полезный параметр, позволяет передавать несколько файлов, за одно соединение, например, не только саму html страницу, но и картинки и css файлы.

MaxKeepAliveRequests 100 — максимальное количество запросов за одно соединение, чем больше, тем лучше.

KeepAliveTimeout 5 — таймаут соединения, обычно для загрузки страницы достаточно 5-10 секунд, так что больше ставить не нужно, но и рвать соединение раньше чем загрузились все данные тоже не нужно.

User, Group — пользователь и группа, от имени которых будет работать программа.

HostnameLookups

— записывать в логи вместо ip адресов доменные имена, лучше отключить, чтобы ускорить работу.

LogLevel — уровень логирования ошибок. По умолчанию используется warn, но чтобы логи заполнялись медленнее достаточно включить error

Include — все директивы include отвечают за подключение рассмотренных выше конфигурационных файлов.

Директивы Directory отвечают за настройку прав доступа к той или иной директории в файловой системе. Синтаксис здесь такой:

<Directory /адрес/в/файловой/системе/>
Параметр значение
</Directory>

Здесь доступны такие основные опции:

AllowOverride — указывает нужно ли читать .htaccess файлы из этой директории, это такие же файлы настроек и таким же синтаксисом. All — разрешать все, None — не читать эти файлы.

DocumentRoot — устанавливает из какой папки нужно брать документы для отображенияа пользователю

Options — указывает какие особенности веб-сервера нужно разрешить в этой папке. Например, All — разрешить все, FollowSymLinks — переходить по символическим ссылкам, Indexes — отображать содержимое каталога если нет файла индекса.

Require — устанавливает, какие пользователи имеют доступ к этому каталогу. Require all denied — всем запретить, Require all granted — всем разрешить. можно использовать вместо all директиву user или group чтобы явно указать пользователя.

Order — позволяет управлять доступом к директории. Принимает два значения Allow,Deny — разрешить для всех, кроме указанных или Deny,Allow — запретить для всех, кроме указанных. Теперь мы можем запретить доступ к директории для всех: Deny from all, а затем разрешить только для приложения от losst.pro: Allow from losst.pro.

Здесь все эти директивы не используются, поскольку нас устраивают значения по умолчанию, но вот в файлах .htaccess они могут быть очень полезны.

У нас остался файл /etc/apache2/ports.conf:

В нем только одна директива, Listen, которая указывает программе на каком порту нужно работать.

Последний файл /etc/apache2/envvars, его вы вряд ли будете использовать, в нем указанны переменные, которые можно использовать в других конфигурационных файлах.

Дальше поговорим немного о htacess. Совсем немного.

Настройка сервера Apache через htaccess

Файлы .htaccess позволяют настраивать веб-сервер на Ubuntu для поведения в определенной директории. Все инструкции, указанные в этом файле выполняются как бы они были обвернуты в тег <directory адрес_папки> если бы находились в основном файле.

Важно заметить, что для того, чтобы сервер читал инструкции из .htaccess настройки для этой папки в основном файле или файле виртуального хоста не должны содержать AllowOverride None, чтобы могли работать все настройки нужно AllowOverride All.

А в остальном, здесь может выполняться любая настройка сервера apache, от включения модулей, до обычного изменения доступа к папке. Поскольку все параметры мы уже рассмотрели просто приведем пару примеров:

Order Deny,Allow
Deny from all

Запрещает всем доступ к этой папке, важно применить, для папок с конфигурацией. /\.]+)/?$ product.php?id=$1 [L]

Но это очень обширная тема и выходит за рамки этой статьи.

Настройка модулей Apache

Как я уже говорил, Apache — модульная программа, ее функциональность можно расширять с помощью модулей. Все доступные модули загрузчики и конфигурационные файлы модулей находятся в папке /etc/apache/mods-available. А активированные в /etc/apache/mods-enable.

Но вам необязательно анализировать содержимое этих папок. Настройка Apache 2.4 с помощью добавления модулей выполняется с помощью специальных команд. Посмотреть все запущенные модули можно командой:

apache2ctl -M

Включить модуль можно командой:

sudo a2enmod имя_модуля

А отключить:

sudo a2dismod имя_модуля

После включения или отключения модулей нужно перезагрузить apache:

sudo systemctl restart apache2

Во время выполнения одной из этих команд создается или удаляется символическая ссылка на файл модуля с расширением load в директории mods-available. Можете посмотреть содержимое этого файла, там только одна строка. Например:

vi /etc/apache2/mods-available/deflate.load

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

Настройки модулей находятся в той же папке, только в файле с расширением .conf вместо load. Например, посмотрим настройки того же модуля для сжатия deflate:

vi /etc/apache2/mods-available/deflate.conf

Файлы в папке conf-available, это такие же модули, только они установлены отдельно от apache, это может быть конфигурационные файлы для включения модуля php или любого другого языка программирования. Здесь работает все точно так же, только команды для включения и отключения этих модулей немного другие:

a2enconf имя_модуля

a2disconf имя модуля

Как вы убедились, включать модули очень просто. Давайте включим несколько необходимых, но не включенных по умолчанию модулей:

sudo a2enmod expires
sudo a2enmod headers
sudo a2enmod rewrite
sudo a2enmod ssl

Модули expires и headers уменьшают нагрузку на сервер. Они возвращают заголовок Not Modified, если документ не изменился с последнего запроса. Модуль expiries позволяет устанавливать время, на которое браузер должен кэшировать полученный документ. Rewrite позволяет изменять запрашиваемые адреса на лету, очень полезно при создании ЧПУ ссылок и т д. А последний для включения поддержки шифрования по SSL. Не забудьте перезагрузить apache2 после завершения настроек.

Настройка виртуальных хостов Apache

Было бы не совсем удобно, если на одной физической машине можно было размещать только один сайт. Apache может поддерживать сотни сайтов на одном компьютере и выдавать для каждого из них правильное содержимое. Для этого используются виртуальные хосты. Сервер определяет к какому домену приходит запрос и отдает нужное содержимое из папки этого домена.

Настройки хостов Apache расположены в папке /etc/apache2/sites-available/. Для создания нового хоста достаточно создать файл с любым именем (лучше кончено с именем хоста) и заполнить его нужными данными. Обернуть все эти параметры нужно в директиву VirtualHost. Кроме рассмотренных параметров здесь будут использоваться такие:

  • ServerName — основное имя домена
  • ServerAlias — дополнительное имя, по которому будет доступен сайт
  • ServerAdmin — электронная почта администратора
  • DocumentRoot — папка с документами для этого домена

Например:

vi /etc/apache2/sites-available/test.site.conf

<VirtualHost *:80>
ServerName test.site
ServerAlias www.test.site
ServerAdmin webmaster@localhost
DocumentRoot /var/www/test.site/public_html
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

Виртуальные хосты, как и модули нужно активировать. Для этого есть специальные утилиты. Чтобы активировать наберите:

sudo a2ensite test.site

Здесь test. site — имя файла виртуального хоста. Для отключения тоже есть команда:

sudo a2dissite test.site

Настройка виртуальных хостов Apache завершена и на публичном сервере это все бы уже работало, но если вам нужна настройка Apache на домашней машине, то вы ваш новый сайт не откроется в браузере. Браузер не знает такого сайта. И откуда ему знать? DNS службы не могут ничего сообщить об этом доменном имени. Но в системе Linux мы можем сами указать ip адреса для доменных имен в файле /etc/hosts. Поэтому добавляем в конец файла такие строки:

vi /etc/hosts

127.0.0.1 test.site
127.0.0.1 www.test.site

Вот, ну теперь будет работать, открывайте браузер, проверяйте.

Выводы

Вот и все. Установка и настройка Apache linux завершена, вы можете использовать программу для размещения ваших сайтов. Более того, вы не просто настроили ее, вы разобрались со всеми подробностями и теперь знаете чуточку больше. Если у вас остались еще вопросы, пишите в комментариях!

Обнаружили ошибку в тексте? Сообщите мне об этом. Выделите текст с ошибкой и нажмите Ctrl+Enter.

Установка и настройка Apache | Убунту

1. Обзор

Apache — это веб-сервер с открытым исходным кодом, который бесплатно доступен для серверов Linux.

В этом руководстве мы рассмотрим этапы настройки сервера Apache.

Чему вы научитесь

  • Как настроить Apache
  • Некоторая базовая конфигурация Apache

Что вам понадобится

  • Сервер Ubuntu 16.04 LTS
  • Secure Shell (SSH) доступ к вашему серверу
  • Базовые знания командной строки Linux

Все готово? Давайте перейдем к следующему шагу!

Автор: Аден Падилья


2. Установка Apache

Чтобы установить Apache, установите последний метапакет apache2 , выполнив:

 sudo подходящее обновление
sudo apt установить apache2
 

После запуска команды все необходимые пакеты установлены, и мы можем проверить это, введя наш IP-адрес для веб-сервера.

Если вы видите страницу выше, это означает, что Apache был успешно установлен на вашем сервере! Давайте двигаться дальше.


3. Создание собственного веб-сайта

По умолчанию Apache поставляется с включенным базовым сайтом (тот, который мы видели на предыдущем шаге). Мы можем изменить его содержимое в /var/www/html или настройки, отредактировав его файл виртуального хоста, найденный в /etc/apache2/sites-enabled/000-default.conf .

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

Сегодня мы собираемся оставить конфигурацию виртуального хоста Apache по умолчанию, указывающую на www.example.com , и настроить свою собственную на gci.example.com .

Итак, давайте начнем с создания папки для нашего нового веб-сайта в /var/www/ , запустив

 sudo mkdir /var/www/gci/
 

Здесь он называется gci , но любое имя будет работать, если мы укажем его позже в файле конфигурации виртуальных хостов.

Теперь, когда у нас есть каталог, созданный для нашего сайта, давайте поместим в него файл HTML. Давайте зайдем в наш только что созданный каталог и создадим его, набрав:

.
 компакт-диск /var/www/gci/
нано index.html
 

Вставьте следующий код в файл index.html :

 
<голова>
   Ubuntu рулит! </название>
</голова>
<тело>
  <p> Я запускаю этот веб-сайт на сервере Ubuntu Server!
</тело>
</html>
 </pre><p> Довольно круто, правда?</p><p> Теперь давайте создадим файл VirtualHost, чтобы он отображался при вводе <strong> <code> gci.example.com </code> </strong> .</p><hr/><h3><span class="ez-toc-section" id="4_VirtualHost"> 4. Настройка файла конфигурации VirtualHost </span></h3><p> Мы начинаем этот шаг, заходя в каталог файлов конфигурации:</p><pre> cd /etc/apache2/доступные сайты/
 </pre><p> Поскольку Apache поставляется с файлом VirtualHost по умолчанию, давайте возьмем его за основу. ( <code> gci.conf </code> используется здесь, чтобы соответствовать имени нашего поддомена):</p><pre> sudo cp 000-default.<img class="lazy lazy-hidden" loading='lazy' src="//russia-dropshipping.ru/wp-content/plugins/a3-lazy-load/assets/images/lazy_placeholder.gif" data-lazy-type="image" data-src='/800/600/https/www.maketecheasier.com/assets/uploads/2015/10/apache_mod_status.jpg' /><noscript><img loading='lazy' src='/800/600/https/www.maketecheasier.com/assets/uploads/2015/10/apache_mod_status.jpg' /></noscript> conf gci.conf
 </pre><p> Теперь отредактируйте файл конфигурации:</p><pre> судо нано gci.conf
 </pre><p> У нас должна быть наша электронная почта в <code> ServerAdmin </code>, чтобы пользователи могли связаться с вами в случае возникновения какой-либо ошибки Apache:</p><pre> ServerAdmin yourname@example.com
 </pre><p> Мы также хотим, чтобы директива <code> DocumentRoot </code> указывала на каталог, в котором размещены файлы нашего сайта:</p><pre> DocumentRoot /var/www/gci/
 </pre><p> Файл по умолчанию не имеет <code> ServerName </code> директива, поэтому нам нужно добавить и определить ее, добавив эту строку под последней директивой:</p><pre> имя_сервера gci.example.com
 </pre><p> Это гарантирует, что люди попадут на правильный сайт вместо сайта по умолчанию, когда они введут <strong> <code> gci.example.com </code> </strong> .</p><p> Теперь, когда мы закончили настройку нашего сайта, давайте сохраним и активируем его на следующем шаге!</p><hr/><h3><span class="ez-toc-section" id="5_VirtualHost"> 5. Активация файла VirtualHost </span></h3><p> После настройки нашего веб-сайта нам нужно активировать файл конфигурации виртуальных хостов, чтобы включить его.<img class="lazy lazy-hidden" loading='lazy' src="//russia-dropshipping.ru/wp-content/plugins/a3-lazy-load/assets/images/lazy_placeholder.gif" data-lazy-type="image" data-src='/800/600/https/losst.pro/wp-content/uploads/2019/07/4.png' /><noscript><img loading='lazy' src='/800/600/https/losst.pro/wp-content/uploads/2019/07/4.png' /></noscript> Мы делаем это, выполнив следующую команду в каталоге файла конфигурации:</p><pre> sudo a2ensite gci.conf
 </pre><p> Вы должны увидеть следующий вывод</p><pre> Включение сайта gci.
Чтобы активировать новую конфигурацию, вам нужно запустить:
  служба apache2 перезагрузить
root@ubuntu-server:/etc/apache2/сайты-доступны#
 </pre><p> Чтобы загрузить новый сайт, мы перезапускаем Apache, набрав:</p><pre> служба apache2 перезагрузить
 </pre><h4><span class="ez-toc-section" id="i-6"> Конечный результат </span></h4><p> Теперь настал момент истины, давайте наберем имя нашего хоста в браузере. Ура!</p><p> <strong> Дальнейшее чтение: </strong></p><ul><li> Примеры VirtualHost</li></ul><p> Было ли это руководство полезным?</p><ul><li></li><li></li><li></li></ul><p> Спасибо за отзыв.</p><hr/><h2><span class="ez-toc-section" id="_-_Apache"> Как быстро развернуть веб-сервер Apache </span></h2><p> Изображение</p> Изображение<p> <sup> с сайта Pixabay </sup></p><p> Иногда вам нужно быстро развернуть веб-сервер.<img class="lazy lazy-hidden" loading='lazy' src="//russia-dropshipping.ru/wp-content/plugins/a3-lazy-load/assets/images/lazy_placeholder.gif" data-lazy-type="image" data-src='/800/600/https/z-issue.com/blog_imgs/tech/linux/apache_php/apache_prefork_mod_php.jpg' /><noscript><img loading='lazy' src='/800/600/https/z-issue.com/blog_imgs/tech/linux/apache_php/apache_prefork_mod_php.jpg' /></noscript> Веб-сервер позволяет легко выполнять такие задачи, как тестирование веб-приложений, реализация проекта проверки концепции или просто знакомство с веб-разработкой.</p><p> Ниже описано, как это сделать с помощью почтенного HTTP-сервера Apache. Я начну с установки, затем продолжу редактирование базового файла конфигурации, создание нескольких документов, настройку брандмауэра и, наконец, тестирование службы.</p><p> Обратите внимание, что это очень простое тестовое развертывание. Он не подходит для веб-серверов с выходом в Интернет. Чтобы быть готовым к работе, вы должны настроить брандмауэры и проверить настройки вашего сервера.</p><h3><span class="ez-toc-section" id="_Apache-13"> Установите Apache </span></h3><p> Если ваш дистрибутив Linux еще не включает Apache, выполните следующую команду для установки пакета:</p><pre> $ sudo dnf install httpd </pre><p> Если вы используете другой менеджер пакетов, измените команду соответствующим образом.</p><h3><span class="ez-toc-section" id="i-7"> Отредактируйте файл конфигурации </span></h3><p> Используя любой текстовый редактор (у меня Vim, но Nano или другие тоже подойдут), откройте <code> /etc/httpd/conf/httpd.<img class="lazy lazy-hidden" loading='lazy' src="//russia-dropshipping.ru/wp-content/plugins/a3-lazy-load/assets/images/lazy_placeholder.gif" data-lazy-type="image" data-src='/800/600/https/cdn.haproxy.com/wp-content/uploads/2019/10/All-replicas-per-node@0.75x.png' /><noscript><img loading='lazy' src='/800/600/https/cdn.haproxy.com/wp-content/uploads/2019/10/All-replicas-per-node@0.75x.png' /></noscript> conf </code> .</p><p> Возможно, эти два значения уже установлены в этом файле, но для уверенности подтвердите их:</p><pre> Корень документа /var/www/html
Listen 80 </pre><p> Используйте функцию поиска в вашем редакторе, чтобы найти подходящие строфы. Вам может потребоваться раскомментировать раздел <code> DocumentRoot </code>. В этой статье используется стандартное расположение по адресу <code> /var/www/html </code> .</p><p> Директива <code> Listen </code> просто указывает, какой порт прослушивает служба. В этом случае используйте стандартный порт 80 для HTTP.</p><p> <strong> <em> [ Лучше интегрируйте безопасность в жизненный цикл вашего программного обеспечения. Загрузите руководство по внедрению DevSecOps. ] </em> </strong></p><h3><span class="ez-toc-section" id="i-8"> Управление службой </span></h3><p> Вы установили веб-сервер, но еще не запускали его. Используйте команду <code> systemctl </code> для запуска и включения службы <code> httpd </code>:</p><pre> $ sudo systemctl start httpd
$ sudo systemctl status httpd </pre><p> Запуск службы не означает, что с этого момента она будет запускаться автоматически.<img class="lazy lazy-hidden" loading='lazy' src="//russia-dropshipping.ru/wp-content/plugins/a3-lazy-load/assets/images/lazy_placeholder.gif" data-lazy-type="image" data-src='/800/600/https/fuzeservers.ru/wp-content/uploads/a/4/7/a47968a1d0110bd18ce5122d3412de00.jpeg' /><noscript><img loading='lazy' src='/800/600/https/fuzeservers.ru/wp-content/uploads/a/4/7/a47968a1d0110bd18ce5122d3412de00.jpeg' /></noscript> Чтобы ваш веб-сервер запускался автоматически после перезагрузки, используйте подкоманду <code> enable </code>:</p><pre> $ sudo systemctl enable --now httpd </pre><h3><span class="ez-toc-section" id="_80"> Откройте порт 80 </span></h3><p> Теперь, когда сайт настроен (и в реальной ситуации защищен), пришло время открыть брандмауэр. Я предполагаю, что вы используете <code> firewalld </code> , поэтому введите следующие команды, чтобы разрешить HTTP-трафик на сервер:</p><pre> $ sudo firewall-cmd --permanent --zone=public --add-service=http
$ sudo firewall-cmd --reload
$ sudo firewall-cmd --list-all --zone=public </pre><p> Возможно, вам потребуется изменить значение зоны в зависимости от вашего дистрибутива.</p><h3><span class="ez-toc-section" id="i-9"> Протестируйте сервер </span></h3><p> Сначала проверьте сервер с помощью браузера. Запустите Firefox и перейдите по адресу <code> localhost:80 </code>, чтобы увидеть страницу подтверждения веб-сервера Apache по умолчанию.</p><h3><span class="ez-toc-section" id="i-10"> Создание контента </span></h3><p> Вероятно, вы установили веб-сервер не только для того, чтобы увидеть «Он работает!» в вашем браузере.<img class="lazy lazy-hidden" loading='lazy' src="//russia-dropshipping.ru/wp-content/plugins/a3-lazy-load/assets/images/lazy_placeholder.gif" data-lazy-type="image" data-src='/800/600/https/tehnikaarenda.ru/wp-content/uploads/f/7/1/f712f7bcc57c91f8d3e2afe2822158a3.jpeg' /><noscript><img loading='lazy' src='/800/600/https/tehnikaarenda.ru/wp-content/uploads/f/7/1/f712f7bcc57c91f8d3e2afe2822158a3.jpeg' /></noscript> Чтобы сделать ваш сервер немного интереснее, запустите свой любимый текстовый редактор с помощью <code> sudo </code> и создайте несколько страниц для имитации веб-сайта. Не стесняйтесь делать это простым или сложным, как вам хочется. Вы также можете создать текстовый файл для проверки загрузок с сайта.</p><p> Домашняя страница вашего сайта по умолчанию <code> index.html </code> , и она расположена в <code> /var/www/html </code> . Сделайте резервную копию существующего файла <code> index.html </code> и создайте новый, содержащий следующий код:</p><pre> <html>
<голова>
<title>Добро пожаловать на мой тестовый сайт!

<тело>
Этот сайт предназначен только для тестирования

 

Кроме того, создайте новый текстовый файл с именем  download-this.txt  со следующим содержимым, чтобы вы могли протестировать команды curl и wget позже:

 Если вы можете прочитать это, загрузка прошла успешно! 

Сохраните эти два файла по адресу /var/www/html .

Просмотрите файлы

Предполагая, что это работает, выполните тестовую загрузку файла download-this.txt .

Используйте другую систему в том же сегменте для тестирования веб-службы. В новой системе запустите веб-браузер. В адресной строке введите IP-адрес веб-сервера.

Не забывайте, вы можете запустить браузер и указать его на сайте с терминала:

 $ firefox http://IP 

Вы видите страницу приветствия?

Системные администраторы часто используют curl или wget для загрузки файлов по HTTP. Эта возможность особенно удобна для автоматической загрузки в сценариях или других сценариях автоматизации.

Запустите эти две команды, чтобы подтвердить возможность загрузки файла:

 $ sudo dnf -y install curl
$ curl -O http://IP/download-this.txt 
 $ sudo dnf -y установить wget
$ wget http://IP/download-this.txt 

Вы получили файл download-this.txt ? Используйте ls для отображения файла и cat для чтения его содержимого. У вас может быть две копии файла, если вы протестировали загрузку с помощью команд curl и wget .

[ Загрузить электронную книгу Управляйте своей средой Linux для достижения успеха. ]

Проверить журналы

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

 $ sudo cat /var/log/httpd/access_log | grep -I download-this.txt 

Завершить

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

Ознакомьтесь со статьями по теме Включить системного администратора

Изображение

Как начать работу с редактором Vi

После того, как вы зафиксировали сочетания клавиш Vi для мышечной памяти, посмотрите, как быстро вы работаете.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *