Уведомления

Группа в Telegram: @pythonsu

#1 Окт. 27, 2014 18:13:17

hound
Зарегистрирован: 2014-10-27
Сообщения: 41
Репутация: +  0  -
Профиль   Отправить e-mail  

Apache + mod_wsgi

Ребята, доброго вечера!
В общем, уже второй день ломаю голову чтобы подружить уже апач с джанго…
Делал по этой инструкции:
http://djbook.ru/ch20s04.html

Создал тестовый проект
django-admin.py startproject mysite
в директории /var/www/

Вот такие настройки прописан в созданном файле apache/django.wsgi
import os, sys

#sys.path.append('/usr/local/lib/python3.4/dist-packages/django')

sys.path.append('/var/www/mysite/')

os.environ = ‘mysite.settings’
import django.core.handlers.wsgi
application = django.core.handlers.wsgi.WSGIHandler()


Такие в файле настроек апача:
<VirtualHost *:80>
DocumentRoot /var/www/mysite/


WSGIScriptAlias / /var/www/mysite/apache/django.wsgi
WSGIDaemonProcess cargo processes=2 maximum-requests=5 threads=1
WSGIProcessGroup cargo

#ErrorLog “|/usr/sbin/rotatelogs /var/log/apache2/cargo.error.%Y-%m-%d.log 86400”
#CustomLog “|/usr/sbin/rotatelogs /var/log/apache2/cargo.access.%Y-%m-%d.log 86400” combined
ServerSignature On


</VirtualHost>


При попытке зайти на айпи серера вываливается 500 ошибка…
Лог апача в прицепке…
система ubuntu server 14
Помогите пожалуйста разобраться, а то уже сил нет

Прикреплённый файлы:
attachment error.log (7,6 KБ)

Офлайн

#2 Окт. 27, 2014 18:45:31

GreyZmeem
От: Киев
Зарегистрирован: 2013-12-03
Сообщения: 147
Репутация: +  34  -
Профиль   Отправить e-mail  

Офлайн

#3 Окт. 27, 2014 19:34:16

hound
Зарегистрирован: 2014-10-27
Сообщения: 41
Репутация: +  0  -
Профиль   Отправить e-mail  

Apache + mod_wsgi

GreyZmeem
https://code.djangoproject.com/ticket/23146


Теперь он так ругается:
mod_wsgi (pid=2128): Target WSGI script ‘/var/www/mysite/django.wsgi’ cannot be loaded as Python module.
mod_wsgi (pid=2128): Exception occurred processing WSGI script ‘/var/www/mysite/django.wsgi’.
Traceback (most recent call last):
File “/var/www/mysite/django.wsgi”, line 10, in <module>
application = django.core.wsgi.get_wsgi_application()
AttributeError: ‘module’ object has no attribute ‘wsgi’



файл django.wsgi имеет такой вид:
import os, sys

#sys.path.append('/usr/local/lib/python2.7/dist-packages/django')

sys.path.append('/var/www/mysite/')

os.environ = ‘mysite.settings’
import django.core.handlers.wsgi

application = django.core.wsgi.get_wsgi_application()



Да и странно почему он до этого в логах писал такой путь в джанго:
/usr/local/lib/python2.7/dist-packages/django/template/debug.py

когда в настройках я ему указывал:
/usr/local/lib/python3.4/dist-packages/django

Отредактировано hound (Окт. 27, 2014 19:35:45)

Офлайн

#4 Окт. 27, 2014 20:10:51

hound
Зарегистрирован: 2014-10-27
Сообщения: 41
Репутация: +  0  -
Профиль   Отправить e-mail  

Apache + mod_wsgi

Поменял файл django.wsgi:
import os, sys

sys.path.append('/usr/local/lib/python3.4/dist-packages/django')

sys.path.append('/var/www/mysite/')

os.environ = ‘mysite.settings’

from django.core.wsgi import get_wsgi_application

application = get_wsgi_application()


Так зараработало…
но все так же смущает, путь к джанго…в строчке
sys.path.append('/usr/local/lib/python3.4/dist-packages/django')
при указании “левого” все равно работает…
Зачем тогда его указывать? И как проверить какая версия питона запускается в итоге?

Ради интереса вставил в этот файл функцию:
print “hello”

без скобок…в логах ошибок не было, а раз работает без скобок значит питон 2 юзается…вопрос как переключить на 3-ий?) или я чего-то не понимаю?)

Отредактировано hound (Окт. 27, 2014 20:19:04)

Офлайн

#5 Окт. 27, 2014 22:36:27

hound
Зарегистрирован: 2014-10-27
Сообщения: 41
Репутация: +  0  -
Профиль   Отправить e-mail  

Apache + mod_wsgi

В общем, удалил модуль wsgi для апача…потом поставил
libapache2-mod-wsgi-py3
Настроил файл как в прошлом моем сообщении
с 3-ьим питоном вроде как заработало…в брайзере по айпи сервера тестовая страница питона отображается…
но в логах апача появляется следующее (в аттаче) критичные ли эти ошибки? что еще нужно допилить?

Прикреплённый файлы:
attachment log.txt (2,2 KБ)

Офлайн

#6 Окт. 27, 2014 23:33:48

nnmware
Зарегистрирован: 2012-07-21
Сообщения: 133
Репутация: +  13  -
Профиль   Отправить e-mail  

Apache + mod_wsgi

Полагаю зависит от того питона, с которым mod_wsgi собран.
Я бы вообще порекомендовал nginx+uwsgi юзать, лепотища.

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version