URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID8
Нить номер: 5807
[ Назад ]

Исходное сообщение
"Apache"

Отправлено Дмитрий , 10-Июн-08 13:41 
Добрый день.
Друзья, имеется такая ситуация:
Apache2 с suexec
python

Требуется сделать так, чтобы скрипты, написаные на питоне работали как CGI.

А точнее, интересует, есть ли вариант, при котором оперируя с AddType и Action, сделать так, чтобы не требовалось указывать заголовок с путем до интерпретатора.
То есть чтобы файлы с расширением .python не требовали наличия
#!/usr/local/bin/python


Содержание

Сообщения в этом обсуждении
"Apache"
Отправлено Mil , 11-Июн-08 11:44 
>[оверквотинг удален]
>Apache2 с suexec
>python
>
>Требуется сделать так, чтобы скрипты, написаные на питоне работали как CGI.
>
>А точнее, интересует, есть ли вариант, при котором оперируя с AddType и
>Action, сделать так, чтобы не требовалось указывать заголовок с путем до
>интерпретатора.
>То есть чтобы файлы с расширением .python не требовали наличия
>#!/usr/local/bin/python

Можно написать свой врапер, какого-то такого вида
#/bin/sh
python $PATH_TRANSLATED
и засунуть этот врапер в Action.
(можете посмотреть материал http://michurin.com.ru/html-add.shtml, очень близкая тема, только вам надо не подставлять текст в заданый файл, а обрабатывать файл python-ом, что, по сути, то же самое)


"Apache"
Отправлено Дмитрий , 11-Июн-08 14:46 
>[оверквотинг удален]
>>То есть чтобы файлы с расширением .python не требовали наличия
>>#!/usr/local/bin/python
>
>Можно написать свой врапер, какого-то такого вида
>#/bin/sh
>python $PATH_TRANSLATED
>и засунуть этот врапер в Action.
>(можете посмотреть материал http://michurin.com.ru/html-add.shtml, очень близкая тема, только вам надо не подставлять
>текст в заданый файл, а обрабатывать файл python-ом, что, по сути,
>то же самое)

да, я так пробовал сделать
ругается так: Premature end of script headers:

Пробовал указывать полный путь до питона...

в виртульном хосте писал так:
AddType application/x-httpd-python .head
ScriptAlias /cgi-bin/ /<полны путь>/cgi-bin/
Action application/x-httpd-python /cgi-bin/header.cgi

В header.cgi:
#!/bin/sh
python $PATH_TRANSLATED

В главном конфиге апача:
AddHandler cgi-script .cgi


"Apache"
Отправлено Mil , 11-Июн-08 14:56 
а если так:

#!/bin/sh
echo 'Content-Type: text/html'
echo ''
python $PATH_TRANSLATED

сработает?

если сработает, то значит вы неправильно выдавали заголовки из питонского скрипта; впрочем, это и так станет видно :-)


"Apache"
Отправлено Дмитрий , 16-Июн-08 16:19 
>[оверквотинг удален]
>
>#!/bin/sh
>echo 'Content-Type: text/html'
>echo ''
>python $PATH_TRANSLATED
>
>сработает?
>
>если сработает, то значит вы неправильно выдавали заголовки из питонского скрипта; впрочем,
>это и так станет видно :-)

Mil? спасибо большое за ответы.

Так
#!/bin/sh
python $PATH_TRANSLATED

тоже сработало, в торопях оказывается не сохранил файл. Сегодня вернулся к этому вопросу - заметил.