我在Windows Vista上使用zend社区服务器。 我正在关注Keith Pope在Zend Framework 1.8中的教程。
$this->_view->headLink()->appendStylesheet('/css/main.css');
没有findmain.css文件(404)。 实际的文件path是htdocs / myapp / public / css / main.css。 当我拿出斜线,并改变它
$this->_view->headLink()->appendStylesheet('css/main.css');
它工作正常。 但是,在zend文档中查找appendStylesheet函数的示例时,它使用示例
$this->headLink()->appendStylesheet('/styles/basic.css')
所以在我看来,现在“为我工作”是不正确的。 任何想法,为什么这是这样的?
当你取出斜线时,“<base />”标签也会影响样式表的加载位置。 如果基本标签不存在,那么CSS将会相对于你所在的位置加载(例如: http:// localhost / myapp /将会从http://localhost/myapp/css/main.css加载css包括不使用斜线)
从你的描述来看,我认为你的文档根目录是指向myapp /而不是myapp / public /,你已经将你的<base href =“”/>配置为'/ myapp /',因此实际上是从'/ myapp / css / main.css“时不使用斜杠。
另外,请检查文档根目录的路径。
加
echo $ this-> baseUrl();
在输出之前
echo $ this-> headLink();
。 所以在布局上就像
echo $ this-> baseUrl()。 “/”。 $这 - > headLink();
要么
Git代码
希望能帮助到你。