Найти - Пользователи
Полная версия: тестирование cgi-сценариев
Начало » Python для экспертов » тестирование cgi-сценариев
1
zlodiak
подскажите пожалуйста способ тестирования питоновских скриптов

я создаю html-файлы, которые обрабатываются cgi. мне нужно чтобы я заполнил фору на html-страничке, нажал кнопку отправить и вызвался соответствующий обработчик .py

примеров подобных программ в интернетах много, но ни одна у меня не работает. проблема в том, что после отправки формы на экран выводится исходный текст обработчика, а сам он не отрабатывает(всё это происходит под управлением open server)

я использую “сервер” из книжки лутца:
import os, sys
from http.server import HTTPServer, CGIHTTPRequestHandler
webdir = '.'   # where your HTML files and cgi-bin script directory live
port   = 80    # http://servername/ if 80, else use http://servername:xxxx/
if len(sys.argv) > 1: webdir = sys.argv[1]             # command-line args
if len(sys.argv) > 2: port   = int(sys.argv[2])        # else default ., 80
print('webdir "%s", port %s' % (webdir, port))
os.chdir(webdir)                                       # run in HTML root dir
srvraddr = ('', port)                                  # my hostname, portnumber
srvrobj  = HTTPServer(srvraddr, CGIHTTPRequestHandler)
srvrobj.serve_forever()                                # serve clients till exit
то есть запускаю его и иду заполнять и отправлять мою форму

подскажите пожалуйста что я делаю не так. или может быть есть другой более простой способ тестировать простейшие cgi-сценарии?
Budulianin
zlodiak
проблема в том, что после отправки формы на экран выводится исходный текст обработчика
zlodiak
подскажите пожалуйста что я делаю не так

“CGI-сценарии
на языке Python должны сохраняться в подкаталоге cgi-bin”

Твоя книга, стр 469

“Необязательно давать файлу расширение .cgi, но совершенно необходимо
поместить его в каталог cgi-bin и сделать выполняемым с помощью
команды chmod +х <имя_файла>. В любом другом каталоге веб-сервер будет
интерпретировать сценарий как простой текстовый файл и просто выведет его
содержимое в окне броузера, а если файл сценария не сделать выполняемым,
при обращении к нему веб-сервер вернет сообщение об ошибке.”

Django, подробное руководство, стр 20
zlodiak
у меня файлы .py как раз в каталоге cgi-bin находятся. и все файлы исполняемые так как windows
Budulianin


zlodiak
или может быть есть другой более простой способ тестировать простейшие cgi-сценарии?

CGIHTTPServer
zlodiak
CGIHTTPServer не запускается
Budulianin
zlodiak
CGIHTTPServer не запускается

Он в Python2, там это написано.

В Python3 http.server

Google
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB