1

我只是用 PHP 和路由开发一个网站,我决定不再自己构建整个系统,然后我选择了 altorouter/altorouter。所以这是我的网站树 我的网站树

这就是我的index.php样子

<?php

define('WEBROOT', __DIR__);

define('TARGET_PATH', WEBROOT.'/contents');


require 'vendor/autoload.php';

$router = new AltoRouter();

$router->setBasePath('/kpitalis.com/');

require_once 'config/routes.php';

$match = $router->match();

$target = $match['target'];
$params = $match['params'];


if (is_array($match)) {
    if (is_callable($match['target'])) {
        call_user_func_array($target, $params);
    } else {
        ob_start();
        require TARGET_PATH."/{$target}.php";
        $pageView = ob_get_clean();
    }
    require TARGET_PATH."/frame/layout.php";
} else {
    require TARGET_PATH."/error.php";
}

我的路线文件routes.php如下所示:

<?php

$router->map('GET', '/', 'home', 'home');
$router->map('GET', '/contact', 'contact', 'contact');
$router->map('GET', '/about', 'about', 'about');
$router->map('GET', '/achievements', 'achievements', 'achievements');
$router->map('GET', '/achievements/[*:slug]', 'achievements', 'achievement');
$router->map('GET', '/projects', 'projects', 'projects');
$router->map('GET', '/projects/[*:slug]', 'projects', 'project');
$router->map('GET', '/news', 'news', 'news');
$router->map('GET', '/news/[*:slug]', 'news', 'single_news');

?>

和我的.htaccess

Options +FollowSymLinks

RewriteEngine On

RewriteCond %{REQUEST_FILENAME} !-f 

RewriteRule ^(.*)$ index.php?url=$1 [QSA,L]

问题是当我运行 le PHP sel-server 时我可以获得路由,但不能获得我的 css 和 javascipt 文件(我说好的,我可以稍后修复它)现在我正在尝试查看它在我的本地主机上的工作方式,但所有我能到达的是错误页面error.php

我错过了什么?

4

0 回答 0