Altorouter не может выполнять маршруты

Я использую Altorouter в базовом PHP-приложении (без фреймворка), но почему-то он не работает. Ниже приведены детали:

index.php

 <?php error_reporting(E_ALL); ini_set('display_errors',1); require_once __DIR__ . '/vendor/autoload.php'; $router = new AltoRouter(); $router->map( 'GET', '/', function() { include __DIR__ . 'home.php'; }); print "Done"; 

Он печатает Done и без ошибок в журнале php.

Htaccess

 RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-f RewriteRule . index.php [L] 

Я получаю доступ к нему как ` http: // localhost / home / myapp /

Solutions Collecting From Web of "Altorouter не может выполнять маршруты"

Хорошо, я понял вопрос. URL, который я хочу получить, это:

http://localhost/home/myapp/

Altorouter не знает о корневом URL-адресе, поэтому basePath необходимо установить. это делается так:

$router->setBasePath('/home/myapp');

Обратите внимание, что в setBasePath не нужно setBasePath / должно быть, потому что мы setBasePath это в нашу функцию map следующим образом:

 $router->map('GET', '/', 'home.php', 'home'); $match = $router->match(); if ($match) { require $match['target']; } else { header("HTTP/1.0 404 Not Found"); require '404.html'; }