【问题标题】:How does this zend framework path work?这个 zend 框架路径是如何工作的?
【发布时间】:2011-04-02 15:36:15
【问题描述】:

我在 windows vista 上使用 zend 社区服务器。我正在学习 Keith Pope 的 Zend Framework 1.8 一书中的教程。

$this->_view->headLink()->appendStylesheet('/css/main.css'); 

没有找到 main.css 文件 (404)。实际的文件路径是 htdocs/myapp/public/css/main.css 。当我取出斜线并将其更改为

$this->_view->headLink()->appendStylesheet('css/main.css'); 

它工作正常。但是,当在 zend 文档中查找 appendStylesheet 函数的示例时,它使用了示例

$this->headLink()->appendStylesheet('/styles/basic.css')

所以在我看来,现在对我“有效”的东西是不正确的。关于为什么会这样的任何想法?

【问题讨论】:

    标签: php windows apache zend-framework path


    【解决方案1】:

    当你去掉斜线时,“”标签也会影响你的样式表的加载位置。如果基本标签不存在,则 css 将相对于您所在的位置加载(即:http://localhost/myapp/ 将从 http://localhost/myapp/css/main.css 加载 css,当您不在包含中使用斜杠时)

    根据您的描述,我认为您的文档根目录指向 myapp/ 而不是 myapp/public/,并且您已将 配置为 '/myapp/',因此实际上加载了 css不使用斜线时来自 '/myapp/css/main.css'。

    另外,检查文档根目录的路径。

    【讨论】:

    • 谢谢!是的,文档根目录设置为 myapp 而不是 public
    【解决方案2】:

    添加

     echo $this->baseUrl(); 
    在你输出之前
     echo $this->headLink(); 
    。 所以在布局中它会像
     回声 $this->baseUrl() 。 “/”。 $this->headLink(); 

    或者

    Git Code

    希望对你有帮助。

    【讨论】:

      猜你喜欢
      • 2012-06-05
      • 2012-04-04
      • 1970-01-01
      • 1970-01-01
      • 2012-01-31
      • 1970-01-01
      • 1970-01-01
      • 2012-04-22
      • 1970-01-01
      相关资源
      最近更新 更多