我正在尝试使用Zend框架创建应用程序 我用zf工具创建了基本的应用程序结构。
现在,当我尝试使用 http://localhost/zendApp/public/index.php 启动应用程序时 默认的“欢迎使用Zend Framework!”页面加载。
但是,当I型的的http://本地主机/ zendApp /公共/ 或的的http://本地主机/ zendApp /公共/索引索引控制器不被调用,但 而是我收到错误消息:
*指定的控制器无效(zendApp)
array (
'controller' => 'zendApp',
'action' => 'public',
'module' => 'default',
)
如您所见,它正在尝试使用应用程序名称启动控制器。 此外,如果我在索引控制器中创建其他操作并使用 http:// localhost / zendApp / public / index / newaction 调用它 我得到了同样的错误:
阵列( 'controller'=> 'zendApp', 'action'=> '上市', 'index'=> 'newaction', 'module'=> '默认', )
你能帮我理解为什么不调用索引控制器吗? 感谢。
答案 0 :(得分:0)
您的控制器的网址不包含公用文件夹。例如UserController就是 http://localhost/zendApp/user/不是http://localhost/zendApp/public/user,您的索引控制器应该适用于http://localhost/zendApp/或http://localhost/zendApp/index。
你的url reiter(例如mod_rewrite)应该被设置为重写所有urp到/public/index.php而不是静态文件,例如images,css js等。参见here
你有这个设置: “如果要部署到”用户“站点(例如http://localhost/~rob),则需要在.htaccess文件中使用RewriteBase行:RewriteBase / ~rob / zf-tutorial / public /”from { {3}}