我已经在本地机器上安装了zend框架。我在httpd.conf中配置了一个虚拟主机,并在我的主机文件(127.0.0.1 mysite)中添加了一行。我正在运行Windows 7.一切正常。问题是当我上传托管服务器的路径混淆起来。 我正在上传一个名为zf-framework的远程目录。要访问索引页,我需要输入这个网址:http://mysite/zf-framework/public。它显示索引页面,但当我按页面上的任何链接时,它们会混在一起,最终会变成http://mysite/controller/action,实际上它应该是http://mysite/zf-framework/public/controller/action。我已经找到了解决这种情况的方法......使用echo $ this-> baseUrl(link)获取layout.phtml中的任何链接。提交表单时问题更为严重。我不能在那里使用baseUrl ....或者我不知道如何使用它。有没有办法编写一些通用配置的东西,以便这可以由框架自动解决。比方说在index.php或bootstrap.php中写一些会自动修复路径的东西?zend与路径的框架问题
-1
A
回答
0
我不是100%,但如果你在routes.ini中指定路由为zf-framework/public/Controller/Action等,这应该可以解决你的问题。
我会看到这是一个bandaid,但我不是100%确定如何正确解决您的问题,除非您修改远程服务器上的vhosts文件以将文档根设置为公用文件夹。如果这不是一个选项,那么上面应该可以工作,但是要知道所有的文件都可以从每个人(至少是你的文件夹结构)访问。如果数据库模式位于/ data目录中,我不确定这可以造成什么样的危害(如果有的话)。
如果可能的话,最好尝试让公共设置为web根目录。
1
如果您使用的是Zend_Application,那么将以下内容添加到您的configs/application.ini文件中。
resources.frontController.baseUrl =“/你的路径,在这里”
如果你不使用Zend_Application,那么这样做在你的引导,或index.php文件。
$front = Zend_Controller_Front::getInstance();
$front->setBaseUrl('/your-path-here');
您将不必使用$这 - >的baseUrl()提交表单,以同样的动作和控制器时(刚离开了形式标记的action属性),或者当使用重定向动作帮手。然而,你的视图脚本中的链接将需要你$ this-> baseUrl('/ url-without-base'),这对我来说不算太糟糕。
相关问题
- 1. Zend框架路由问题
- 2. Zend框架:插件路径
- 3. Zend框架包含路径
- 4. Zend框架的路由问题
- 5. 使用路线的zend框架问题
- 6. 与Zend的路径问题1.12
- 7. zend框架问题
- 8. Zend框架2,分页路由问题
- 9. 问题与Zend框架的功能getBaseUrl()
- 10. 问题与Zend的框架1
- 11. Zend框架的基本路径
- 12. Zend Framework,路径问题
- 13. Zend框架的问题
- 14. 问题与Zend框架模块
- 15. 问题与Zend框架设置?
- 16. Zend框架2正从路径URL
- 17. Zend框架PHP - >真实路径()
- 18. 配置zend框架库路径
- 19. Zend框架网址问题?
- 20. zend框架FlashMessenger问题
- 21. Zend框架PDF多问题
- 22. Zend框架PartialLoop - 问题
- 23. 插件问题 - Zend框架
- 24. zend框架版本问题
- 25. Zend框架安装问题
- 26. Zend框架查看问题
- 27. Zend框架路由器的问题 - 奇怪的路由行为
- 28. zend框架2在控制器中的基本路径访问
- 29. Zend框架路由
- 30. Zend框架2路
你帮我解决了另一个问题!呵呵谢谢! – 2017-05-21 03:01:37