2009-11-11 140 views
2

我在服務器上有一個目錄,我只希望.JPG文件由apache提供服務 - 而apache應拒絕對php,php3,php5等文件的請求。禁用從.htaccess中的文件夾中提供PHP文件

我應該在.htaccess中寫什麼?

我試過了,前兩個給500內部錯誤,第三個根本不工作!

<Directory full-path-to/USERS> 
<FilesMatch "\.(php3?|phtml)$"> 
    Order Deny,Allow 
    Deny from All 
</FilesMatch> 

<LocationMatch "/USERS/.*\.(php3?|phtml)$"> 
    Order Deny,Allow 
    Deny from All 
</LocationMatch> 


php_flag engine off 

問候,

+0

如果您檢查error_log,您應該會看到與您的HTTP 500相關的更詳細的消息。 當然,最簡單的解決方案是簡單地將jpegs存儲在不同的文件夾中... – 2009-11-11 18:11:20

+0

謝謝弗蘭克 - 我正要打開日誌文件;但隨後戴夫提出了一個援助之手..問題修復! – effkay 2009-11-11 18:28:51

回答

6

怎麼樣了mod_rewrite?

RewriteEngine on 

RewriteCond %{REQUEST_FILENAME} !(\.jpg|\.jpeg) 
RewriteRule ^(.*)$ - [F] 

這將允許只提供.jpg或.jpeg文件,其他所有文件都會得到403禁止。

+0

aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaand This works !!! 謝謝你! – effkay 2009-11-11 18:27:25

+0

+1用於間歇解決方案。讓RewriteEngine開啓的副作用是什麼? (我對此不太瞭解,這就是爲什麼我問。) – Tom 2009-11-11 18:30:18

+0

很高興幫助。我不確定副作用是什麼,但我有一種感覺,它會很小或不存在。 – davethegr8 2009-11-11 18:39:29

相關問題