Введение
Apache — это веб-сервер, наиболее популярный из используемых в операционных системах Linux. Apache — это модульный веб-сервер, в котором каждая функциональность основана на определенных модулях. Чтобы добавить или удалить какие-либо определенные функции на сервере Apache, мы можем просто включить или отключить соответствующий модуль.
Модуль Apache « mod_rewrite » способен создавать статические адреса, оптимизированные для поисковых систем и веб-стандартов. Он использует ориентированный на правила механизм перезаписи, основанный на анализаторе регулярных выражений PCRE, для перезаписи URL-адресов. По умолчанию mod_rewrite сопоставляет URL-адрес с путем в файловой системе. Однако его также можно использовать для перенаправления URL-адреса на другой URL-адрес или для вызова внутреннего прокси-сервера.
mod_rewrite предоставляет гибкий и мощный способ управления URL-адресами с использованием неограниченного количества правил. Каждое правило может иметь неограниченное количество связанных условий правила, что позволяет вам переписывать URL-адрес на основе переменных сервера, переменных среды, заголовков HTTP или временных меток.
mod_rewrite работает с полным URL-адресом, включая раздел информации о пути. Правила перезаписи можно прописать в файле httpd.conf или в .htaccess.
Включить модуль перезаписи
Самый простой способ включить модули веб-сервера Apache 2 — использовать команду a2enmod. Мы включаем модуль перезаписи Apache, используйте следующую команду.
sudo a2enmod rewrite
Перезапустите Apache, чтобы изменения вступили в силу:
sudo service apache2 reload
Отключить модуль перезаписи
Точно так же, чтобы отключить модуль, мы используем команду a2dismod. Например, если вам нужно отключить модуль перезаписи Apache, используйте следующую команду.
sudo a2dismod rewrite
Перезапустите Apache, чтобы изменения вступили в силу:
sudo service apache2 reload
Проверить статус перезаписи
Чтобы проверить статус конкретного модуля, используйте команду a2query. Например, чтобы проверить текущий статус модуля перезаписи, выполните следующую команду:
sudo a2query -m rewrite
Вы можете получить выходное сообщение, подобное следующему:
rewrite (enabled by site administrator)
Список модулей Apache2
Чтобы вывести список всех доступных модулей Apache2 и их конкретное состояние, используйте следующую команду.
sudo a2query -m
Вывод
В этом руководстве мы увидели, как включать и отключать модуль перезаписи Apache 2 в Ubuntu 18.04 LTS. Описанные команды должны работать для большинства модулей Apache, а также для всех последних версий Ubuntu и производных дистрибутивов.