Отправка сообщения






Добро пожаловать!

Как проверить наличие модуля Apache?

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

Иногда правильное выполнение логики скриптов (PHP) может зависеть от наличия конкретного модуля Apache. Исходя из этого, возникает вопрос, как можно сделать проверку наличия нужного модуля. После чего можно сделать вывод сообщения о том, что нужный модуль не подгружен, либо если он в наличии — продолжать выполнять код.

Начиная с версии 4 в PHP появилась функция apache_get_modules(), которая в качестве результата возвращает массив, со списком загруженных модулей сервера Apache.

Пример работы функции:

<?php
print_r(apache_get_modules());
?>

Результат будет примерно такого вида:

Array
(
    [0] => core
    [1] => http_core
    [2] => mod_so
    [3] => sapi_apache2
    [4] => mod_mime
    [5] => mod_rewrite
)

Опираясь на результат работы этой функции, можно сделать проверку, есть ли нужное значение в массиве возвращаемого результата. В качестве примера мы проверим наличие важного модуля mod_rewrite, который служит для реализации разнообразных перенаправлений/преобразований запросов. Кстати касательно использования возможности данного модуля есть несколько полезных постов на эту тему: «Концепция единой точки входа», «Как сделать 301-редирект в htaccess с www. на без www.?», которые я так же рекомендую к прочтению.

Пример.

<?php
$module = 'mod_rewrite'; # имя модуля
if (in_array($module, apache_get_modules()))
	echo 'Модуль '.$module.' в наличии!';
else
	echo 'Модуль '.$module.' отсутсвует.';
?>

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

Добавил: htmaker, 03.06.2014 г.
 
плохослабосойдетхорошоотлично (Еще не оценили)
Загрузка...

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

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

Комментарии

  • Загрузка...

Наверх