2010-10-21 62 views
0

您好,我正在爲我的Web應用程序使用MVC體系結構。現在的問題是我在一個地方有我的意見,並在另一個地方有我的圖像文件夾。現在我無法將我的圖像打印在正確的位置,因爲我無法獲得正確的路徑。即使我給出絕對路徑,圖像也不會被打印。獲取目前文件夾上方兩個文件夾的圖像鏈接

images location: /var/www/app_name/web_root/images/1.png 

views location: /var/www/app_name/views/controller_name/view1.php 

所以現在view1.php,我要補充的圖像,這是我在嘗試鏈接使用相對路徑的形象。

<td align="left"><a id="nextlink2" href="#"><img src="../../webroot/images/1.png" width="64" height="64" border="0" /></a></td> 

這是我用於絕對路徑的路徑,它們都沒有工作。

<td align="left"><a id="nextlink2" href="#"><img src="/var/www/app_name/webroot/images/1.png" width="64" height="64" border="0" /></a></td> 

而在這兩種情況下,我都無法得到要顯示的圖像。原因是什麼?任何幫助都會很棒。

謝謝!

回答

1

你說的絕對路徑是正確的,但是網絡術語中的絕對路徑是web根目錄中的一個,而不是文件的完整路徑。所以你的情況,這應該工作:

<td align="left"><a id="nextlink2" href="#"><img src="/images/1.png" width="64" height="64" border="0" /></a></td> 

類似的相對路徑例如將作爲工作:

<img src="../../images/1.png" width="64" height="64" border="0" /> 

但我使用絕對路徑堅持。

+0

雖然我已將該文件夾命名爲webroot,但是/ var/www是我的apache文檔根目錄。當我在地址欄中說localhost時,它就是/ var/www文件夾。那麼我會從app_name/web_root/images/1.png開始我的路徑嗎?因爲我的原始路徑是/var/www/app_name/web_root/images/1.png – macha 2010-10-21 19:43:36

+2

在這種情況下是/app_name/web_root/images/1.png - 絕對路徑應該以斜槓開始。 – 2010-10-21 19:44:34

+0

謝謝Tim! – macha 2010-10-21 19:59:50

2

瀏覽器不知道您的網絡服務器上的目錄結構。嘗試這條道路從Web根目錄開始(web_root你的情況):

<img src="/images/1.png" width="64" height="64" border="0" /> 
0

也有做出符號鏈接用於/圖像選項文件夾是的DocumentRoot下的,或者在/ app_name文件夾。

[email protected]:/var/www/app_name$ ls -la 
drwxr-xr-x 2 foo foo 4096 2010-10-21 21:55 . 
drwxr-xr-x 80 foo foo 4096 2010-10-21 21:54 .. 
lrwxrwxrwx 1 foo foo 10 2010-10-21 21:55 images -> /home/foo/images/ 

這樣,您就可以鏈接到你的圖片只是:

<img src="/app_name/images/1.png" /> 

這種方式,圖像不需要被存儲在同一個文件夾,甚至在同一個分區,而且你不透露你的文件系統是如何組織的。

相關問題