Начиная с PHP 5.4.0, вы можете запустить свой собственный сервер с Встроенный веб-сервер PHP
Начиная с PHP 5.4.0, CLI SAPI предоставляет встроенный-в веб-сервере.
Веб-сервер запускает только один однопоточный процесс , поэтому приложения PHP останавливаются, если запрос заблокирован.
Пример для:
- запускает только один однопоточный процесс - означает, что при попытке cURL или file_get_contents , или сделайте любой запрос в том же домене, в котором вы попадете в цикл и застряли на сервере, потому что PHP синхронизирован, а этот однопоточный.
Пример из документации
router.php
<?php
// router.php
if (preg_match('/\.(?:png|jpg|jpeg|gif)$/', $_SERVER["REQUEST_URI"])) {
return false; // serve the requested resource as-is.
} else {
echo "<p>Welcome to PHP</p>";
}
?>
Затем в терминале введите php -S localhost:8000 router.php
, чтобы запустить сервер.
Я бы не хотел хранить свои файлы в папке htdocs.
Чтобы указать другой корень документа, добавьте аргумент -t
:
php -S localhost:8000 -t /path/to/project router.php
Я недавно написал пакет nodejs node-php-awesome-server , цель которого - сделать это, вы можете запустить веб-сервер nodejs, который отображает php, устанавливать переменные окружения php, изменять настройки ini ...все еще использую это сегодня в комплекте с промежуточным программным обеспечением webpack для рендеринга на стороне сервера.
Если вас сейчас интересует только php,Если у них есть встроенный сервер, если этот маршрутизатор по умолчанию не покрывает то, что вам нужно, я написал маршрутизатор для решения нескольких фреймворков PHP-Встроенный веб-сервер-Маршрутизатор