Развертывание проекта PyAMF Django на Apache с помощью mod_wsgi - PullRequest
0 голосов
/ 16 июня 2011

Я установил PyAMF, Django, Apache2 и mod_wsgi на компьютере Mac OS X 10.6. При разработке проекта я использовал сервер разработки Django. Я хотел бы продолжать использовать http://localhost:8000/gateway или http://127.0.0.1:8000/gateway для шлюза PyAMF. У меня развернут проект Flex на http://localhost, а phpMyAdmin на http://localhost/phpmyadmin.They работает нормально, но я не могу подключиться к шлюзу PyAMF.

Вот моя настройка Apache:

<VirtualHost *:8000>
    # Set this to 'warn' when you're done with debugging
    LogLevel debug

    CustomLog /var/log/apache2/pyamf-access.log combined
    ErrorLog /var/log/apache2/pyamf-error.log

    # PyAMF remoting gateway
    WSGIScriptAlias /gateway /Library/WebServer/Documents/MyApp/django.wsgi

   <Directory /Library/WebServer/Documents/MyApp>
        WSGIApplicationGroup %{GLOBAL}
        Order allow,deny  
        Allow from all
    </Directory>
</VirtualHost>

Вот содержимое скрипта django.wsgi

import os
import sys

path = '/Library/WebServer/Documents'
if path not in sys.path:
    sys.path.append(path)
    sys.path.append('/Library/WebServer/Documents/MyApp')

os.environ['PYTHON_EGG_CACHE'] = '/tmp'    
os.environ['DJANGO_SETTINGS_MODULE'] = 'MyApp.settings'

import django.core.handlers.wsgi
application = django.core.handlers.wsgi.WSGIHandler()

import posixpath

def application(environ, 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)

Буду признателен за любую помощь.

Спасибо

1 Ответ

0 голосов
/ 17 июня 2011

Когда вы добавили отдельный VirtualHost на порт 8000, вы также добавили в конфигурацию Apache в соответствующем месте:

NameVirtualHost *:8000

Обычно такая линия существует только для порта 80.

...