Уведомления

Группа в Telegram: @pythonsu
  • Начало
  • » Web
  • » [ РЕШЕНО ] apache + django + wsgi. Проблемы [RSS Feed]

#1 Июнь 8, 2013 16:58:35

truporez
От:
Зарегистрирован: 2009-05-08
Сообщения: 266
Репутация: +  6  -
Профиль   Адрес электронной почты  

[ РЕШЕНО ] apache + django + wsgi. Проблемы

А в вашем site-packages каталог django так и называется или там есть pth файл со списком пакетов и джанго имеет имя типа django-1.*.*-py2.7.egg? Потому как pth, как я понимаю, не сработает. И вам необходимо прописывать все пути до всем используемых библиотек. Если их много, возможно поможет virtualenv, хотя сам я так не делал. В таком случае проще купить виртуальный выделенный сервер и не забивать голову этими шаредами.



Офлайн

#2 Июнь 8, 2013 17:08:26

sliv
От: Москва
Зарегистрирован: 2013-06-03
Сообщения: 12
Репутация: +  0  -
Профиль   Отправить e-mail  

[ РЕШЕНО ] apache + django + wsgi. Проблемы

Верно, в site-packages лежит файл типа django-1.*.*-py2.7.egg и еще сам каталог django. Больше никаких файлов или папок не видно.
А может быть проблема в совместимости? На сервере по команде python вызывается именно версия 2.6.4, а она старовата для django-1.5.1, питон 2.7 вызывается только если дополнительно указать версию, т.е. python2.7. Хотя я при установке джанго именно от “его имени” действовал…

Офлайн

#3 Июнь 8, 2013 17:20:52

truporez
От:
Зарегистрирован: 2009-05-08
Сообщения: 266
Репутация: +  6  -
Профиль   Адрес электронной почты  

[ РЕШЕНО ] apache + django + wsgi. Проблемы

вытащите каталог django из egg и убедитесь, что никаких других пакетов не используете. может их отсутствие и вызывает 500.

путь в index.wsgi должен указывать точно на каталог с подкаталогом django.



Офлайн

#4 Июнь 8, 2013 17:32:39

sliv
От: Москва
Зарегистрирован: 2013-06-03
Сообщения: 12
Репутация: +  0  -
Профиль   Отправить e-mail  

[ РЕШЕНО ] apache + django + wsgi. Проблемы

А что значит “вытащить из egg?” просто Вырезать его из текущей папки и вставить в какую-либо директорию выше?
Странно, вроде бы я никаких больше пакетов использовать то и не могу - только джанго поставил, да проект создал, а уже 500 выдает или эти пакеты могут быть уже встроены?

Офлайн

#5 Июнь 8, 2013 18:28:55

truporez
От:
Зарегистрирован: 2009-05-08
Сообщения: 266
Репутация: +  6  -
Профиль   Адрес электронной почты  

[ РЕШЕНО ] apache + django + wsgi. Проблемы

каталог с именем django должен находиться в путях указанных в index.wsgi



Офлайн

#6 Июнь 8, 2013 19:29:04

sliv
От: Москва
Зарегистрирован: 2013-06-03
Сообщения: 12
Репутация: +  0  -
Профиль   Отправить e-mail  

[ РЕШЕНО ] apache + django + wsgi. Проблемы

К сожалению, не помогло. Переустановка на более раннюю версию тоже не увенчалась успехом - все та же 500-ая. Будем искать дальше! Хотя, я уже на полпути от покупки VDS)

Офлайн

#7 Июнь 8, 2013 22:47:09

sliv
От: Москва
Зарегистрирован: 2013-06-03
Сообщения: 12
Репутация: +  0  -
Профиль   Отправить e-mail  

[ РЕШЕНО ] apache + django + wsgi. Проблемы

В общем, разобрался с проблемой. На всякий случай отпишусь, может кому-то и поможет.

Проблема заключалась все-таки в версии джанго. Так как на сервере стоят одновременно версии python2.6.4, 2.7.3, 3.3.0, но по умолчанию подгружается именно версия 2.6.4, то возникала несовместимость джанго 1.5.1 и питона 2.6.
Поставил джанго 1.4.5, затем врубил предустановленную на серваке рабочую джанго 1.1.1 и решил все исполнение рабочего проекта просто перенести на версию 1.4.5. В итоге получилось, но возникли небольшие проблемы с template loader'ами, которые весьма быстро и просто решились правкой settings.py. Потом к рабочей версии прикрутил свежесозданный проект (пришлось немного поправить пути в index.wsgi) и вот оно… долгожданный “it worked!”.
Не 1.5.1 конечно, но гораздо лучше, чем 1.1.1)))

Да, выкладываю рабочие файлы (оба кладутся в корень сайта):

1) .htaccess

Options +ExecCGI
AddHandler wsgi-script .wsgi
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ /index.wsgi/$1 [QSA,PT,L]

2) Index.wsgi
import os, sys
sys.path.append('/home/s/***/django/lib64/python2.6/site-packages') #путь к каталогу джанго
sys.path.append('/home/s/***/mysite/public_html/core') #путь к созданному проекту (у меня - core), где manage.py
#(для тех случаев, когда создается проект с двумя одинаковыми каталогами - один вложен в другой)
os.environ['DJANGO_SETTINGS_MODULE'] = 'core.settings' #здесь прописываем от вложенного каталога
import django.core.handlers.wsgi
application = django.core.handlers.wsgi.WSGIHandler()

Еще раз огромное спасибо, truporez и s0rg за помощь!

Отредактировано sliv (Июнь 8, 2013 22:48:51)

Офлайн

  • Начало
  • » Web
  • » [ РЕШЕНО ] apache + django + wsgi. Проблемы[RSS Feed]

Board footer

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

Powered by DjangoBB

Lo-Fi Version