Мне было интересно, если можно проверить, mod_rewrite
включен ли на Apache и IIS в PHP
.
ModRewrite для IIS существует. Проверьте это here
.
Итак, я ищу скрипт PHP, который проверяет mod_rewrite
на Apache и IIS.
Кто-нибудь знает такой сценарий или может написать?
Специально для Microsoft IIS .
Спасибо!
php
apache
mod-rewrite
iis
связи
источник
источник
mod_rewrite
. Модуль IIS Mod-Rewrite, на который вы, вероятно, ссылаетесь, является совершенно другим и коммерческим продуктом - он не связан с модулем Apache, это совершенно другой вопрос, и у меня нет опыта его использования.phpinfo()
может быть полезен для многих вещей, но если вы хотите написать систему, которая использует,mod_rewrite
если она включена или иным образом откатывается к какому-либо другому поведению, было бы полезно обнаружить ее программно.Скопируйте этот кусок кода и запустите его, чтобы узнать.
источник
Мне нравится решение Кристиана Роя :
Затем вы можете проверить в своем коде PHP для
Не знаю, работает ли это также с IIS (у меня нет возможности проверить), но шансы хорошие.
источник
<IfModule mod_env.c>
ним было бы почти идеально. :)Загрузите файл с именем info.php с этим кодом и запустите его:
Найдите на странице mod_rewrite и посмотрите, сможете ли вы найти его в разделе «Загруженные модули».
источник
не усложняйте, вы можете просто найти в
phpinfo();
Надеюсь полезно!
Спасибо
источник
через командную строку мы в CentOs мы можем сделать это
источник
Посмотрите под Конфигурацией в apache2handler в строке Loaded Modules.
Это просто и работает.
источник
Это мой текущий метод проверки, включен ли Mod_rewrite для Apache и IIS
Он работает на моей локальной машине, а также на моем веб-хосте на основе IIS. Однако на конкретном сервере Apache он не работал для Apache, так как apache_get_modules () был отключен, но на этом сервере был включен mod_rewrite.
источник
Вы можете получить список установленных модулей Apache и проверить это. Возможно, вы можете проверить, установлен ли он, выполнив поиск файла .dll (или аналога linux).
источник
Две строки кода:
источник
Еще один способ до конца
exec()
.Если
mod_rewrite
загружен, он вернет "rewrite_module" в выводе.источник
Другая идея, более грязная, в отношении переписывания модов, заключается в зависимости сервера от ненужной проблемы с php: почему бы, если у вас есть возможность, создать тестовый каталог, поместить в него файл .htaccess, переписать в test.php, вызвать каталог через http и проверьте, если вы получите ожидаемый результат, который вы положили в test.php.
Действительно, грязно.
источник
Используйте эту функцию:
источник
Как насчет того, чтобы сделать перенаправление на известный файл и затем проверить, действительно ли это перенаправление работает с curl?
источник
Для героев и героинов IIS:
Не нужно искать mod_rewrite. Просто установите модуль Rewrite 2 и затем импортируйте файлы .htaccess .
источник