Klein url路由器无法在XAMPP上运行

时间:2015-06-16 05:27:12

标签: php .htaccess xampp klein-mvc

我的应用程序位于C:\ xampp \ htdocs \ urlrouter \ klein \

我使用作曲家安装了klein路由器 而且,我使用这个脚本只是为了简单的基本路由

define('APP_PATH', '/urlrouter/klein/');
require_once 'vendor/autoload.php';
$request = \Klein\Request::createFromGlobals();
$request->server()->set('REQUEST_URI', substr($_SERVER['REQUEST_URI'],  strlen(APP_PATH)));
$klein = new \Klein\Klein();
$klein->respond('GET', '/hello', function () {
return 'Hello World!';
});
$klein->dispatch($request);

我也有.htaccess

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

但是,当我转到http://localhost/urlrouter/klein/hello时,它会将我重定向到XAMPP主页或http://localhost/xampp/splash.php
我无法弄清楚这个路由器有什么问题。请帮帮我

1 个答案:

答案 0 :(得分:1)

我从来没有尝试过与Klein一起操纵REQUEST_URI(不是说你不应该,只是警告缺乏专业知识),但你的substr()调用将会产生& #34;你好",你的路线模式是" / hello"。这可能或不重要(Klein中的路由匹配逻辑有些复杂,我还没有将其所有细节内化)。无论如何,我认为值得一试将你的APP_PATH定义为' / urlrouter / klein'而不是' / urlrouter / klein /'。

如果有效,请冷静。如果没有,请发表评论,我会尝试重现您所看到的内容。