Zend framework mvc zend框架简单动作问题
我正在用Zend服务器在Zend MVC中创建一个hello world项目。有些人认为路线是错误的。我使用zend_工具zf.sh create project创建了该项目,因此它会自己创建所有目录,我将其修改为indexController以尝试以下操作,所有其他文件也会这样做Zend framework mvc zend框架简单动作问题,zend-framework-mvc,Zend Framework Mvc,我正在用Zend服务器在Zend MVC中创建一个hello world项目。有些人认为路线是错误的。我使用zend_工具zf.sh create project创建了该项目,因此它会自己创建所有目录,我将其修改为indexController以尝试以下操作,所有其他文件也会这样做 <?php class IndexController extends Zend_Controller_Action { public function init() { /
<?php
class IndexController extends Zend_Controller_Action
{
public function init()
{
/* Initialize action controller here */
$this->_helper->viewRenderer->setNoRender();
}
public function indexAction()
{
// action body
$this->getResponse()->appendBody('hello from about Action');
}
public function aboutAction()
{
$this->getResponse()->appendBody('hello from about Action');
// action body
}
}
我想这正是错误信息所说的,那就是你需要一个控制器,用于关于
,而你没有。在urlhttp://localhost/index.php/about
,关于
将是一个完全独立的控制器,您需要建立。我认为这正是错误信息所说的,即您需要一个控制器,用于关于
,而您没有。在urlhttp://localhost/index.php/about
,关于
将是您需要建立的一个完全独立的控制器。
localhost/index.php
应转到index
控制器,默认情况下,index
操作(index,index)
localhost/index
还应转到(index,index)
index.php/about
我希望转到(about,index)
,即关于控制器和index
操作,但我可能错了(我没有测试这个)
- 如果您想转到
(index,about)
,您可以转到localhost/index/about
您似乎已经正确定义了about action公共函数aboutAction
,因此应该可以正常工作。
如果您希望能够转到localhost/about或localhost/about/index,则需要定义一个about控制器,如类AboutController extensed Zend\u controller\u Action
,就像您为IndexController
所做的那样
--编辑--
此外,请确保.htaccess的最小值如下所示:
DirectoryIndex index.php
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ /index.php [NC,L]
localhost/index.php
应转到index
控制器,默认情况下,index
操作(index,index)
localhost/index
还应转到(index,index)
index.php/about
我希望转到(about,index)
,即关于控制器和index
操作,但我可能错了(我没有测试这个)
- 如果您想转到
(index,about)
,您可以转到localhost/index/about
您似乎已经正确定义了about action公共函数aboutAction
,因此应该可以正常工作。
如果您希望能够转到localhost/about或localhost/about/index,则需要定义一个about控制器,如类AboutController extensed Zend\u controller\u Action
,就像您为IndexController
所做的那样
--编辑--
此外,请确保.htaccess的最小值如下所示:
DirectoryIndex index.php
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ /index.php [NC,L]
但我希望服务器将索引解释为控制器,大约解释为操作。@Nissan911,我明白你为什么会这样想。但是,Zend正在寻找上述格式的about
控制器。但我希望服务器将索引解释为controller about as action。@Nissan911,我明白您为什么会这样想。但是,Zend正在寻找上述格式的about
控制器。找不到本地主机/索引->页面。localhost/index/about server解释为about controller,这完全不是我的意思。您使用的是哪台web服务器?如果是Apache,您是否正确配置了.htaccess?用于ubuntu的zend服务器。apache2See my edit。。您需要在公共目录中有一个.htaccess文件(假定为标准ZF结构),该文件如下所示this@manyxcxiIndexController是否限制Zend中的操作?我从来没有真正想过它,但你不能像我所说的那样真的给它添加动作(我想是吧?)。找不到本地主机/索引->页面。localhost/index/about server解释为about controller,这完全不是我的意思。您使用的是哪台web服务器?如果是Apache,您是否正确配置了.htaccess?用于ubuntu的zend服务器。apache2See my edit。。您需要在公共目录中有一个.htaccess文件(假定为标准ZF结构),该文件如下所示this@manyxcxiIndexController是否限制Zend中的操作?我从来没有真正想过它,但你不能真的给它添加动作(我想是吧?)