Задать вопрос
@k0smos

Почему не работает роутер в php?

Всем привет.
При попытки открытия страницы выдает:
Warning: include(/var/www/www-root/data/www/domain.com/item/index.php?id=32919099): failed to open stream: No such file or directory in /var/www/www-root/data/www/domain.com/index.php on line 14

Warning: include(): Failed opening '/var/www/www-root/data/www/domain/item/index.php?id=32919099' for inclusion (include_path='.:/usr/share/php') in /var/www/www-root/data/www/domain.com/index.php on line 14


вот .htaccess:
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteBase /switch-pay.local/index.php
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d


RewriteRule (.*) /index.php?root=$1 [QSA,L]
RewriteRule (.+)/$ /$1 [L,R=301]

</IfModule>

вот сам роутер:
$routes = explode('/', $_GET['root']);

if($routes[0] == "")
{
    header("Location: https://google.com/");
}
elseif($routes[0] == "item")
{
    //include "item/index.php?id=".$routes[1];
    include(dirname(__FILE__) . "/item/index.php?id=".$routes[1]);
}

Почему этот код может не работать?

Заранее благодарю за помощь.
  • Вопрос задан
  • 166 просмотров
Подписаться 1 Простой 5 комментариев
Помогут разобраться в теме Все курсы
  • Skillfactory
    Профессия Fullstack веб-разработчик на JavaScript и PHP
    20 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Решения вопроса 1
VlasenkoFedor
@VlasenkoFedor
Программист: php, js, go
No such file or directory нет файла в дериктории
include(dirname(__FILE__) . "/item/index.php?id=".$routes[1]);

неправильное название файла
посмотрите на пример Как сделать свой REST API?
простейшего роутера
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
FoodSoul Калининград
от 180 000 до 250 000 ₽
IT-Spirit Москва
от 230 000 до 320 000 ₽
от 200 000 до 290 000 ₽