Я пытаюсь всеми правдами и неправдами получить / admin / static / подано в Apache SSL VirtualHost, предпочтительно Apache (который перенаправляет SSL-трафик на экземпляр Django Gunicorn), или запретить Apache, по крайней мере, Gunicorn обслуживает статический контент, пока я работаю над лучшим решением.
Я получаю 403, обслуживаемый Apache, и все проверенные мной разрешения предполагают, что каталог /usr/lib/python2.7/dist-packages/django/contrib/admin/static/ (и родители по мере необходимости) являются читаемый и исполняемый пользователем, работающим на сервере.
Видите ли вы что-нибудь не так в VirtualHost ниже, что объясняет, почему Apache не обслуживает рассматриваемый каталог как каталог с псевдонимом?
<VirtualHost *:443>
ServerName ccachicago.pragmatometer.com
Alias /media/ "/home/jonathan/ccachicago/media/"
<Directory "/home/jonathan/ccachicago/media/">
Options Indexes MultiViews FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
Allow from 127.0.0.0/255.0.0.0 ::1/128
</Directory>
Alias /admin/static/ "/usr/lib/python2.7/dist-packages/django/contrib/admin/static/"
<Directory "/usr/lib/python2.7/dist-packages/django/contrib/admin/static/">
Options Indexes MultiViews FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
Allow from 127.0.0.0/255.0.0.0 ::1/128
</Directory>
ProxyPass /media/ !
ProxyPass /admin/static/ !
ProxyPass / http://localhost:8080/
ProxyPassReverse / http://localhost:8080/
SSLEngine On
SSLCertificateFile /etc/apache2/ssl/ssl.crt
SSLCertificateKeyFile /etc/apache2/ssl/ssl.key
ServerAdmin CJSHayward@PObox.com
</VirtualHost>
--ОБНОВИТЬ--
Я получаю ту же страницу с ошибкой 403, если закомментирую строки deny / allow. В файле журнала есть:
[Mon Jan 27 21:52:34.297099 2014] [authz_core:error] [pid 4818] [client 205.197.161.146:44895] AH01630: client denied by server configuration: /usr/lib/python2.7/dist-packages/django/contrib/admin/static/css
Так что что-то в моей конфигурации явно не работает; Теперь у меня есть:
<VirtualHost *:443>
ServerName ccachicago.pragmatometer.com
Alias /media/ "/home/jonathan/ccachicago/media/"
ErrorLog /var/log/apache2/error.log
<Directory "/home/jonathan/ccachicago/media/">
Options Indexes MultiViews FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
Allow from 127.0.0.0/255.0.0.0 ::1/128
</Directory>
Alias /admin/static/ "/usr/lib/python2.7/dist-packages/django/contrib/admin/static/"
<Directory "/usr/lib/python2.7/dist-packages/django/contrib/admin/static/">
Options Indexes MultiViews FollowSymLinks
AllowOverride None
#Order deny,allow
#Deny from all
#Allow from 127.0.0.0/255.0.0.0 ::1/128
#Allow from 0.0.0.0 ::1/128
#Allow from all
</Directory>
ProxyPass /media/ !
ProxyPass /admin/static/ !
ProxyPass / http://localhost:8080/
ProxyPassReverse / http://localhost:8080/
SSLEngine On
SSLCertificateFile /etc/apache2/ssl/ssl.crt
SSLCertificateKeyFile /etc/apache2/ssl/ssl.key
ServerAdmin CJSHayward@PObox.com
</VirtualHost>
Вы разрешаете доступ только с 127.0.0.0 и :: 1. Вы уверены, что заходите на сайт по этим адресам? Я бы сначала отключил ограничения доступа и посмотрел, что оттуда произойдет.
Ваш фрагмент журнала показывает, что вы не обращаетесь к серверу из 127.0.0.1 или :: 1, поэтому установленные вами ограничения доступа будут запрещать доступ, когда они действуют.