我的问题是,当我将项目上传到托管时:
http://172.20.30.43/psm/CB11011/
我得到这个错误
An error occurred
Page not found
Exception information:
Message: Invalid controller specified (psm)
这是我的完整域链接。
http://172.20.30.43/psm/CB11011/carrental/public/user/register
但是,如果我在localhost中访问,它看起来很好。这是我的本地主机网址。
localhost/carrental/public/register
真正的控制器是“注册”,而不是psm ..对于基本URL,我已经在application.ini中添加了一行,这是我的代码:
resources.frontController.baseUrl = "http://172.20.30.43/psm/CB11011/carrental/public/"
css,js或layout.phtml中另一个包含文件的问题路径看起来不错。他们可以链接到正确的路径,唯一的错误是zend framework错误地选择了我的控制器。我为我的解释感到抱歉,我是zend框架的新手,不知道如何在zend框架中使用术语进行很好的解释。这是我使用zend框架的第一个项目。
问题在于您的应用程序位于宿主环境中的子文件夹中。通过这种方式,zend认为(通过此调用http://172.20.30.43/psm/CB11011/
)它应该访问控制器psm
并调用action CB11011
。只需.htaccess
在/public
目录内更改文件即可。
像这样的东西(未经测试!!!)应该没问题:
RewriteEngine on
RewriteRule (.*) ./psm/CB11011/$1
并在您的内部更改前控制器的路径application.ini
:
resources.frontController.baseUrl = "/psm/CB11011"
PS:将整个应用程序放入子文件夹存在一些安全问题,因为您的控制器/模块可能是可访问的!
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句