在Ubuntu上需要帮助bootstraping phalcon

时间:2015-09-26 13:39:15

标签: php apache phalcon

我正在开发 Ubuntu 15.04 ,最近我根据guidelines安装了phalcon

它已成功安装,我可以在 phpinfo()中看到phalcon。 我跟随官方网站上的tutorial

我的 .htaccess 文件也正常运行

#/tutorial/.htaccess
<IfModule mod_rewrite.c>
    RewriteEngine on
    RewriteRule ^$ public/ [L]
    RewriteRule ((?s).*) public/$1 [L]
</IfModule>

#/tutorial/public/.htaccess
<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^((?s).*)$ index.php?_url=/$1 [QSA,L]
</IfModule>

但是当我创建 index.php =&gt;公共目录中的bootstrap文件,并在服务器上加载页面。 Phalcon说: PhalconException:无法加载IndexController处理程序类

这是我的 public / index.php 文件

<?php

use Phalcon\Loader;
use Phalcon\Mvc\View;
use Phalcon\Mvc\Application;
use Phalcon\DI\FactoryDefault;
use Phalcon\Mvc\Url as UrlProvider;
use Phalcon\Db\Adapter\Pdo\Mysql as DbAdapter;

try {

// Register an autoloader
$loader = new Loader();
$loader->registerDirs(array(
    '../app/controllers/',
    '../app/models/'
))->register();

// Create a DI
$di = new FactoryDefault();

// Setup the view component
$di->set('view', function () {
    $view = new View();
    $view->setViewsDir('../app/views/');
    return $view;
});

// Setup a base URI so that all generated URIs include the "tutorial" folder
$di->set('url', function () {
    $url = new UrlProvider();
    $url->setBaseUri('/');
    return $url;
});

// Handle the request
$application = new Application($di);

echo $application->handle()->getContent();

} catch (\Exception $e) {
     echo "PhalconException: ", $e->getMessage();
}

我搜索了很多,但不能找到适合我的任何东西。 在此先感谢您的帮助。

1 个答案:

答案 0 :(得分:2)

按照本教程: https://docs.phalconphp.com/en/latest/reference/tutorial.html

Section&#34; Creating Controller&#34; 基本上需要在文件夹/ apps / controllers /下创建IndexController,它应该看起来像这样

<?php
use Phalcon\Mvc\Controller;

class IndexController extends Controller
{

    public function indexAction()
    {
        echo "<h1>Hello!</h1>";
    }
}