2017-04-08 121 views
1

目前我有一個應用程序,在當地正常工作。將其上傳到服務器後,將無法加載任何圖像。這些鏈接被提供給正確的地址,但是它們是404。我的圖像位於子域根目錄的/ assets/images /中。我的鏈接是爲結構化:服務器沒有提供圖像

http://sub.example.com/assets/images/filename.png 

我知道他們實際上是有,我可以從兩個cPanel和FTP中看到它們。資產目錄中的所有其他文件夾和文件在服務器上正確加載js,css,視頻,字體等)。即使css文件通過相對路徑請求圖像時也會遇到404錯誤。

../images/image.png 

我認爲這可能是文件權限錯誤。我檢查了資產和assets/images /,並且這兩個文件夾都被列爲755,這是正確的權限。我簡單地嘗試了777上的圖像文件夾,包括其子文件夾和文件,只是看看,但沒有任何區別。

我在.htaccess中的根目錄如下。目前它正確地路由我的應用程序的其餘部分。

RewriteEngine On 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^(.*)$ index.php?/$1 [L] 

讀成圍繞這一話題的一些其他職位後,我去檢查,看看它是否只是PNG文件,我發現,SVG,JPG,GIF格式也不會加載。

在這一點上,我有點失落,試圖嘗試下一步。

+1

是的,可能是權限限制。在我的.htaccess我把文件夾的名字排除在外:'RewriteCond $ 1!^(index \ .php | application | uploads | assets | favicon \ .ico | robots \ .txt)' –

+0

@Michael K謝謝你的建議。我試過這個。以及 'RewriteCond $ 1!^(index \ .php | assets | assets/images | favicon \ .ico | robots \ .txt)' 沒有任何運氣。 – user1452407

+0

看到你如何要求這些資產會很有趣。 – DFriend

回答

0

只是出於好奇。

RewriteEngine on 
RewriteCond $1 !^(index\.php|application|assets|favicon\.ico|robots\.txt) 
RewriteRule ^(.*)$ /full/path/www/index.php/$1 [L] 

更換/full/path/www/與絕對路徑到你的根文件夾:你,如果你有以下替換所有內容.htaccess文件得到了同樣的問題。

我將這種方法用於CI 2和3應用程序,在我的主服務器以及共享主機上工作。

+0

這實際上解決了我的問題,謝謝。 – user1452407

相關問題