Уведомления

Группа в Telegram: @pythonsu
  • Начало
  • » Django
  • » Директива action, не выполняется скрипт [RSS Feed]

#1 Окт. 27, 2009 07:35:48

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

Директива action, не выполняется скрипт

Всем привет.

Необходимо на уровне апача добавить код в html страницу.

1. Url: http://localhost/test.html
2. htaccess:

Options +ExecCGI
AddHandler cgi-script .py
Action text/html /test.py
Теперь при запросе на получения html файла будет выполнятся скрипт, в котором можно распарсить загружаемую страничку, вставить нужный код и отправить клиенту. Данный вариант работает и с ним нет никаких проблем.

Теперь, если урл обрабатывает джанго

1. Url: http://localhost/

2. htaccess

Options +ExecCGI
AddHandler cgi-script .py
Action text/html /test.py

SetHandler python-program
SetEnv DJANGO_SETTINGS_MODULE settings
SetEnv PYTHON_EGG_CACHE /.....

PythonDebug On
PythonHandler django.core.handlers.modpython
PythonPath "['/..../'] + sys.path"
PythonOption django.root /.....

PythonInterpreter .....
3. urls.py

(r'^$', функция из views)

4. views.py

Сдесь в функции идет рендер на test.html
render_to(test.html)

Проблема в том, что теперь скрипт test.py не выполняется. Такое ощущение что запроса на предоставление html дока апачу не было … Ошибок в логах апача нет.

Где я неправ?



Отредактировано (Окт. 27, 2009 07:36:22)

Офлайн

#2 Окт. 27, 2009 08:07:13

Naota
От:
Зарегистрирован: 2007-06-04
Сообщения: 197
Репутация: +  0  -
Профиль   Отправить e-mail  

Директива action, не выполняется скрипт

Видимо апач все запросы отдает джанге, показывай конфиг.



Офлайн

#3 Окт. 27, 2009 11:47:15

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

Директива action, не выполняется скрипт

Naota
Видимо апач все запросы отдает джанге, показывай конфиг.
Конфиг только тот, что я кинул выше (htaccess), другого нет …

Если в этом конфиге закоментить SetHandler python-program, то скрипт test.py сработает (если вызывать конкретный html документ). Похоже SetHandler python-program конфликтует с директивой action. Можно ли это как то исправить, я пока не знаю ….



Офлайн

#4 Окт. 28, 2009 08:17:13

Naota
От:
Зарегистрирован: 2007-06-04
Сообщения: 197
Репутация: +  0  -
Профиль   Отправить e-mail  

Директива action, не выполняется скрипт

Я не спец по настройке апача, но вероятно это можно разрулить через Alias или mod_rewrite.



Офлайн

#5 Окт. 28, 2009 12:32:08

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

Директива action, не выполняется скрипт

Naota
Я не спец по настройке апача, но вероятно это можно разрулить через Alias или mod_rewrite.
Похоже это нельзя разрулить.
Устанавливая директиву SetHandler python-program, мы говорим апачу, что все урлы должны обрабатываться апачем, через мод питон. Получается что апачу всё равно какой пришел запрос, он его просто отдаст джанге … Хотя в конечном итоге именно апач отдает страничку в браузер, тогда почему не срабатывает директива action …

Вообщем, понять бы как работает это механизм, как всё происходит … по шагам



Офлайн

  • Начало
  • » Django
  • » Директива action, не выполняется скрипт[RSS Feed]

Board footer

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

Powered by DjangoBB

Lo-Fi Version