2013-10-09 101 views
0

我剛剛在我的網站中遇到了一個使用mod_wsgi部署在apache網絡服務器中的獨特的錯誤。以下是我的apache conf文件,使用mod_wsgi在django中渲染媒體文件的問題

1 WSGIScriptAlias//var/www/mysite/apache/django.wsgi 
2 
3 AliasMatch /([^/]*\.png) /var/www/mysite/media/photos/$1 
4 AliasMatch /([^/]*\.gif) /var/www/mysite/media/photos/$1 
5 
6 AliasMatch /([^/]*\.gif) /var/www/mysite/media/admin/image/$1 
7 
8 <Directory /var/www/mysite/media> 
9 Order deny,allow 
10 Allow from all 
11 </Directory> 
12 
13 
14 <Directory /var/www/mysite/apache> 
15 Order allow,deny 
16 Allow from all 
17 </Directory> 

所有的圖像和文件對/ media/admin/images中的.gif文件都有完美的預期效果。正如你可以在第4行注意到的,我已經指定了正確顯示的.gif文件。

如果我把第6行放在第4行上,第4行將停止工作,第6行將工作。爲什麼這樣?除了將這些文件製作成單個目錄之外,有什麼方法可以解決這個問題?

回答

2

我不認爲有。您正在說要爲每.gif文件查找/var/www/mysite/media/photos/。如果它不在,它會失敗。它不會去第二個地方看。您可能需要合併這些文件夾,或者爲其中的一個設置不同的網址。例如:

AliasMatch /admin/([^/]*\.gif) /var/www/mysite/media/admin/image/$1 
+0

謝謝:)它的工作原理。 – Bithin