Я пытался использовать AltoRouter на своем веб-пространстве в подпапке. Но совпадения всегда ложны!
У меня есть эта структура в моем веб-пространстве
domain.com
--/2 --> subfolder
----index.php
----.htacces
Мой файл .htaccess выглядит так:
DirectoryIndex index.php
RewriteEngine on
RewriteBase /2/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
Итак, я настроил вот такой роутер:
<?php
session_start();
require_once 'vendor/autoload.php';
use LemWebPortal\Config;
$latte = new Latte\Engine;
$router = new AltoRouter();
$router->setBasePath('/2/');
$router->map('GET', '/', function () {
require __DIR__ . '/src/Init/index.php';
});
$router->map('GET', '/schulungsbedarf', function () {
require __DIR__ . '/src/Init/courseRequest.php';
});
$match = $router->match();
if ($match && is_callable($match['target'])) {
call_user_func_array($match['target'], $match['params']);
} else {
// no route was matched
header($_SERVER["SERVER_PROTOCOL"] . ' 404 Not Found');
}
echo '<pre>';
var_dump($match);
Теперь, когда я звоню domain.com/2/
или domain.com/2/schulungsbedarf
, я вижу пустую белую страницу с таким сообщением:
bool(false)
Что я здесь пропустил?