2011-01-10 95 views
0

拍攝的圖像我在我的測試機器上的子文件夾中有一個開發項目設置,它必須停留在那裏。 但是,所有的Zend框架視圖都鏈接到服務器根目錄。Zend框架在子文件夾中,但從站點根

CSS鏈接,如:

<link type="text/css" href="<?php echo $this->baseUrl('/css/frontend.css') ?>" rel="Stylesheet" /> 

必須呆在這種方式,但它應該鏈接到

localhost/a/b/c/prj1/css/frontend.css 

我怎樣才能建立這個全球子目錄?

回答

2

您需要
resources.frontController.baseUrl = "https://stackoverflow.com/a/b/c/prj1"
添加到您的配置。
這將設置鏈接到的基地。

注意的$this->headLink()助手是不知道的baseUrl的(可能是公元前BCS)。
要使其工作兼用:這取決於你感覺更舒服
$this->headLink()->appendStylesheet($this->baseUrl('/css/frontend.css'));
$this->headLink()->appendStylesheet($this->baseUrl().'css/frontend.css');

編輯:
根據意見更新

+0

遺憾的是沒有制定出來,我已經加入到ini文件,以及上述CSS資源仍不能正常連接,但在href標籤。 – Pentium10 2011-01-10 12:26:09

+0

那真的很奇怪,你說在同一個文件中兩個``this-> baseUrl()`調用返回不同的結果? – 2011-01-10 12:45:59

+0

現在當我在`echo $ this-> headLink()`在插件摘要中使用`appendStylesheet`時,問題就產生了。那時CSS添加時沒有子文件夾引用,如下所示:`$ view-> headLink() - > appendStylesheet('/ css /'。$ moduleName。'.css','screen');`但是當這個打印不使用baseUrl。爲什麼? – Pentium10 2011-01-10 13:06:29

0

我不知道如果我清楚地瞭解它,但嘗試:

,如果你是在Linux上: 不修改代碼和symlink到文件夾/images//a/b/c/prj1/images/

更新

形成的塞穆爾評論:

您可以使用類似:

<?php 
    $view->headLink()->appendStylesheet($this->baseUrl("css/reset.css")) 
      ->appendStylesheet($this->baseUrl("css/text.css")) 
      ->appendStylesheet($this->baseUrl("css/960.css")) 
      ->appendStylesheet($this->baseUrl("css/demo.css")); 
    echo $this->headLink(); 
    ?> 
0

爲什麼你想要它在你的項目的子目錄中?

您的登錄頁面在轉到url時應該指向公用文件夾。這是所有的CSS/JS /圖像應放置。您的其他項目文件應設置正確的安全權限。

當然這是可以設置不同的安全設置的css文件夾,因爲它是在你的項目文件夾,但我看不出做這樣的地步。

相關問題