Re: Как Django/WSGI и PHP могут поделиться / на Apache?
В ответ на: Как Django/WSGI и PHP могут делиться / на Apache?
Привет,
не могли бы вы опубликовать полный файл конфигурации из /sites-available
У меня возникла проблема, похоже, что механизм переписывания перенаправляет все запросы к django, поэтому статические и php файлы не обслуживаются, и вместо этого я вижу страницу django 404. Если я избавлюсь от правила перезаписи, тогда будут работать статические файлы и php.
вот мой конфигурационный файл apache от /sites-available
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /home/www/django
<Directory />
Options +FollowSymLinks ExecCGI Indexes
AllowOverride None
DirectoryIndex index.php
AddHandler wsgi-script .wsgi
</Directory>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ /mysite.wsgi/$1 [QSA,PT,L]
~
и мой файл.wsgi:
сайт импорта
site.addsitedir ('/ дом / пользователь /.virtualenvs / url.com / Lib / python2.6 / сайт-пакеты')
импорт ОС, система
путь = '/home/www/django', если путь не в sys.path: sys.path.append (path)
os.environ ['DJANGO_SETTINGS_MODULE'] = 'mysite.settings'
sys.path.append (путь + '/mysite') импорт django.core.handlers.wsgi
_application = django.core.handlers.wsgi.WSGIHandler ()
Импортировать приложение posixpath def (environment, start_response):
# Wrapper to set SCRIPT_NAME to actual mount point.
environ['SCRIPT_NAME'] = posixpath.dirname(environ['SCRIPT_NAME'])
if environ['SCRIPT_NAME'] == '/':
environ['SCRIPT_NAME'] = ''
return _application(environ, start_response)
корневой каталог документа на диске (/home/www/django) содержит файлы php, изображения и файл mysite.wsgi. спасибо за помощь
1 ответ
Догадаться
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /home/webdev/domains/handtrackers.com/django
<Directory /home/www/django>
#Options +FollowSymLinks +SymLinksIfOwnerMatch ExecCGI Indexes
AllowOverride None
AddHandler cgi-script .cgi
AddHandler application/x-httpd-php .php
AddHandler wsgi-script .wsgi
Order allow,deny
Allow from all
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ /mysite.wsgi/$1 [QSA,PT,L]
</Directory>
но указание любого параметра, подобного закомментированному... приведет к:
Msgstr "Опции FollowSymLinks или SymLinksIfOwnerMatch отключены, что означает, что директива RewriteRule запрещена:"