Zend Framework布局中的图像

Ham*_*riq 5 php zend-framework

我有点迷失在这里,解决方案可能潜伏在我的鼻子下但我无法得到,想到你们,如果任何人可以帮助.

这是问题:我有Zend Framework标准文件布局:

Project
  -application
     -controllers
     -views 
     -layouts
        -scripts
           -layouts.phtml
  -library
  -public
     -images
     -index.php
Run Code Online (Sandbox Code Playgroud)

现在的问题是,我通过images/logo.gif等在layouts.phtml中引用图像,在控制器视图中也是如此/ images/arrow.gif

如果请求是简单的http:// servername/project/controller,那很好

但如果请求更深,如http:// servername/project/controller/index/page/2

图像打破了他们自己,他们显然无法获得路径,我注意到的是,如果我在以后的请求,图像路径将是http:// servername/project/controller/index/page/2/images/logo.gif不存在,图像在公共/图像中

我的理解是(我已经搜索了一下)框架知道默认的公共,并将图像路由到公共/图像总是.但是,这不起作用.我是否必须添加一些重写规则或其他内容?

有人可以帮忙吗?我会很感激!

Ham*_*riq 11

有时你应该先问坐在你旁边的人!

这是解决方案:

<?=$this->baseUrl('images/logo.gif')?>
Run Code Online (Sandbox Code Playgroud)

进一步调查后编辑

用于记录和帮助他人:如果您已正确配置DocumentRoot,则可以像在非Zend框架环境中那样在公共场所访问图像文件夹.我只在我的httpdconf中创建了一个虚拟目录,而如果你没有创建一个VirtualHost并且当你的文件也不在默认的htdocs目录中时不给它DocumentRoot,那么期待这个问题.请参阅以下URL中的创建虚拟主机标题:http: //framework.zend.com/manual/en/learning.quickstart.create-project.html,这将解决问题!