diff --git a/features/commandline.xml b/features/commandline.xml index 7bc5b46cf8..76f2f5a6e4 100644 --- a/features/commandline.xml +++ b/features/commandline.xml @@ -1,5 +1,5 @@ - + Работа с PHP из командной строки @@ -1679,19 +1679,28 @@ php > если не указали опцию -t для переназначения корневого документа. При запросе URI, который не указывает на конкретный файл, возвращается файл index.php или index.html в заданной директории. При недоступности файлов - поиск файлов продолжается в родительской директории, и так далее, + поиск продолжается в родительских каталогах, пока веб-сервер не найдёт файл или не достигнет корня документа. При обнаружении файла index.html веб-сервер возвращает содержимое файла, а при обнаружении файла index.php — возвращается результат обработки. При этом в элемент $_SERVER['PATH_INFO'] - записывается последняя часть URL-адреса, иначе возвращается 404-й код ответа. + записывается последняя часть URL-адреса, иначе в ответе возвращается 404-й код статуса. + + + Начиная с PHP 8.4.0 поиск индексного файла выполняется даже при запросе пути, + который похож на путь к файлу — с точкой в последнем сегменте, + по которому не получилось найти файл. Раньше такие запросы пропускали поиск + и сразу возвращали в ответе 404-й код статуса. + + + - Если PHP-файл указывается в командной строке, когда запускается веб-сервер, - то он рассматривается как скрипт "маршрутизации" (router). Скрипт выполняется - в самом начале каждого HTTP-запроса. Если этот скрипт возвращает - &false;, то запрашиваемый ресурс возвращается как есть. - В противном случае браузеру будет возвращён вывод этого скрипта. + PHP-файл, который указывается в командной строке при запуске веб-сервера, + интерпретируется как скрипт «маршрутизации». Скрипт выполняется + в самом начале каждого HTTP-запроса. При возврате скриптом + значения &false; запрашиваемый ресурс возвращается как есть; + иначе в браузер возвращается вывод скрипта. @@ -1864,11 +1873,6 @@ if (preg_match('/\.(?:png|jpg|jpeg|gif)$/', $_SERVER["REQUEST_URI"])) { $ php -S localhost:8000 router.php ]]> - - - Встроенный веб-сервер не должен использоваться в общедоступной сети. - - @@ -1933,6 +1937,11 @@ $ php -S localhost:8000 router.php $ php -S 0.0.0.0:8000 ]]> + + + Встроенный веб-сервер не должен использоваться в общедоступной сети. + +