Маршрут с точкой (IP-адрес) не найден, возвращает 404

я использую Lumen 5.4,

Вот как настроен мой маршрут:

$app->get('/ip/{ip}', GeoIpController::class . '@show');

{ip} Параметр маршрута должен быть IP-адресом с точками. Однако, кажется, что есть проблема, когда на маршруте есть точки. Возвращает 404 не найденную ошибку.

Я знаю, что мог бы передать IP-адрес как простой GET параметр запроса, но хотите, чтобы IP был частью URL и обрабатывался как параметр маршрута.

Для тестирования я использую php -S localhost:8080 -t public подать заявку.

0

Решение

Это ограничение для встроенного в PHP сервера, а не для Lumen (или Laravel, или Slim, или любых других фреймворков / приложений с маршрутизатором). Вы можете просмотреть Отчет об ошибках PHP здесь.

По сути, если URL-адрес имеет точку в URL после имени скрипта, встроенный сервер обрабатывает запрос как статический запрос файла и фактически никогда не пытается выполнить приложение.

Этот запрос должен нормально работать на реальном веб-сервере (apache, nginx), но он не будет работать при запуске на встроенном веб-сервере разработки PHP.

4

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]