Проверьте PHP, если PATH_INFO включен на вашем сервере?

Из PHP существует ли кросс-платформенный способ межсетевого сервера, определяющий, включен ли PATH_INFO на сервере, на котором вы работаете?

Похоже, что $ _SERVER ['PATH_INFO'] заполняется только в том случае, если после сценария есть дополнительные сегменты пути, поэтому вы не можете достоверно определить, включен ли PATH_INFO, если запрос предназначен для /index.php, например.

Solutions Collecting From Web of "Проверьте PHP, если PATH_INFO включен на вашем сервере?"

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

Одна идея, которая приходит на ум, – это сделать запрос с помощью file_get_contents()

 http://current_site_domain/check.php/test 

check.php выдаст $_SERVER['PATH_INFO'] .

Если результатом запроса является «тест», работает PATH_INFO.

Конечно, это может закончиться неудачей, потому что открытие URL-адресов отключено, потому что вы не знаете локальный домен, потому что есть брандмауэр на месте и т. Д. И т. Д.

Другой способ, который менее подвержен ошибкам, – использовать iframe :

 <iframe src="/check.php/It%20works!"></iframe> 

Если вы видите, что «работает» внутри ifrane, работает PATH_INFO. Возможно, полезно для процедуры установки.

$ _SERVER ["PATH_INFO"] всегда должен быть доступен. Если это не так, это означает, что между именем файла и строкой запроса не было никакой дополнительной информации.