Phalcon \ Tag :: linkTo URL不包含项目所在的子文件夹

时间:2012-09-21 15:25:04

标签: php rewrite phalcon

我正在使用PHP 5.3,phalcon 0.5.0跟踪OS X 10.8上的tutorial。我的apache的web根目录中有一个名为tutorial的文件夹。当我使用代码时:

echo Phalcon\Tag::linkTo("signup", "Sign Up Here!");

在输出html中我得到了

localhost/signup 

而不是

localhost/tutorial/signup

我也在我的.htacess文件中输入了RewriteBase / tutorial /,但仍然遇到了同样的问题。我在0.4的phalcon和0.5

中也有同样的问题

1 个答案:

答案 0 :(得分:5)

在bootstrap期间,URL重写需要在项目的DI容器中注册(文件public / index.php)

// Setting up the view component
$di->set(
    'url', 
    function() {
        $url = new \Phalcon\Mvc\Url();
        $url->setBaseUri('/tutorial/');
        return $url;
    }
);

这将有效地指示Phalcon在内部使用子文件夹以及\Phalcon\Tag::linkTo()函数。请注意setBaseUri()

中的结尾斜杠“/”字符