2016-02-28 47 views
2

嘿,我有一個奇怪的問題。nginx只能用於jpeg文件

我創建了一個非常簡單和基本的網站,沒有任何CMS,有時在頁面中使用vanilla PHP來顯示日期或包含菜單。

問題是除了jpg文件外,沒有資產可以加載。我所有的CSS,JS和PNG都是404'd,而所有子目錄都是403禁止的。我已經將訪問規則更改爲777,沒有改變任何事情。

例如,subdomain.site.com/images/是403,但subdomain.site.com/images/bg.jpg正確地發現,雖然subdomain.site.com/images/logo.png只是404

服務器上nginx的運行,但.htaccess文件正在努力(我不是一個親與服務器,但至少「拒絕所有」作品,所以我猜所有其他作品也是如此)。我無法訪問nginx配置。

感謝您的幫助!

+4

nginx不使用.htaccess,你確​​定你的服務器是nginx嗎?另外,我建議在問題中添加'nginx'標記。 – Jigar

+0

我爲您添加了nginx標籤@solarBanana。如前所述,如果您正在使用'.htaccess',則無法在nginx上運行 - 或者,您正在運行nginx,但錯誤地認爲'.htaccess'確實可行。除非你有某種模塊(我們很想知道它)。 (而且,你的標題說的是Apache,而不是nginx ......) –

+0

問題是,當我看到一個404錯誤時,它顯然在它下面寫了nginx。爲了驗證我的htaccess文件是否被正確解釋,我在根目錄中放置了一個「全部拒絕」的文件,這在之前很清楚。然後,它成爲403禁止... – solarBanana

回答

0

nginx可以配置爲只響應匹配預定義模式的請求,這比使用Apache更容易。

配置(Nginx的):

server { 
    ... 
    location /images { 
     autoindex off; 
     location ^/images/.+\.jpg$ { 
      try_files $uri =404; 
     } 
     return 404; 
    } 
    ... 

在這個例子中,/images/img.jpg可以送達,但/images/img.png將是404

除非你管理的服務器配置,你不能改變的。要求服務器管理員這樣做。 (或者如果可以,更改配置文件)

相關問題