2012-03-09 64 views
0

我有一個使用htaccess使用codeigniter構建的sitw。但是在一些請求中真的很奇怪。在開始處包含一個特定的文件(槽代碼標記)。這經常發生,如果緩存被關閉。它發生在不同的文件中,並且不管文件在文件系統上還是請求通過codeigniter時都無關緊要。我猜有什麼了htacccess,但我不sure.I'll包括小提琴手底部htaccess以及截圖:奇怪的服務器響應

<IfModule mod_rewrite.c> 
    RewriteEngine on 

    #Options -Indexes 

    #Force non-www 
    RewriteCond  %{HTTP_HOST} ^www\.(.*) 
    RewriteRule  ^(.*)$ http://%1/$1 [R=301,L] 

    #If image, javascript or css file does not exists, then try application folder 
    RewriteCond %{REQUEST_FILENAME} !-f 
    RewriteRule ^(images|js|css)/(.*)$ ./application/$1/$2 [L] 

    #If javascript or css file exists, send it to minifier 
    RewriteCond %{REQUEST_FILENAME} -f 
    RewriteRule ^(.*)(\.(js|css))$ ./standalone/min/?f=$1$2 [L] 

    #If isn't file or folder then send it to codeigniter 
    RewriteCond %{REQUEST_FILENAME} !-f 
    RewriteCond %{REQUEST_FILENAME} !-d 
    RewriteRule ^(.*)$ ./index.php?/$1 [L] 
</IfModule> 

<IfModule !mod_rewrite.c> 
    ErrorDocument 404 ./index.php 
</IfModule> 

正如你可以看到原來的請求是top-bar-large.png和呼應$_SERVER出來coudeigniter,顯示「上限請求」是parim.js。畢竟parim.js應該是javascript文件。有任何想法嗎? Response shown on fiddler

+0

您的'parim.js'是否可能包含AJAX代碼並從該代碼中查詢? – user973254 2012-03-09 15:26:25

回答

0

PHP_SELF是index.php ...所以你好像是得到一個包含js文件的CI錯誤頁面。

默認情況下,codeigniter在application目錄中帶有一個.htaccess文件,其中Deny all;所以這些文件夾中的任何內容都不會公開訪問(包括那裏的圖片文件夾),除非您修改了它。

此外,請確保圖像存在。

+0

圖像確實存在,當我在新標籤上打開圖像並刷新幾次,一切正常。 Bur當它在頁面(CSS背景圖像)時,它隨機隱藏。在每個頁面上,在頁面上隱藏不同的圖像。 – Kristian 2012-03-12 06:46:15

+0

你的htaccess看起來不錯。向我們展示一些代碼。 – stormdrain 2012-03-12 12:14:29