Пытаемся вывести приложение wsgi, работающее на mod_wsgi. Мы запустили его перед использованием wsgiref.simple_server
, в качестве среды отладки. Теперь мы хотим перейти на использование Apache httpd для интеграции с загрузкой статических файлов через тот же порт и предоставить среду, более подходящую для производства.
Созданный нами файл httpd.conf выглядит так:
<VirtualHost *:80>
DocumentRoot /var/www/
ErrorLog /var/www/log/error_log
LogLevel debug
WSGIScriptAlias /app /var/www/python/resource/rest.py
<Directory /var/www/python/>
Order allow,deny
Allow from all
</Directory>
<Directory />
Order allow,deny
Allow from all
RewriteEngine On
# Some rewrites go here
</Directory>
</VirtualHost>
При такой настройке мы можем получить доступ к основному файлу приложения rest.py (в http://myhost/app
), но любой импорт в модули (например, from module1 import function
где module1 находится в том же каталоге, что и rest.py) не работают с ImportError
.
Я подозреваю, что это связано с необходимостью установить какую-то переменную среды, но я добавил /var/www/python
к sys.path
на основном методе приложения, и он не работает. Любая помощь или указатели по этому поводу были бы очень признательны.
Спасибо!