Найти - Пользователи
Полная версия: Что я делаю не так?
Начало » Python для новичков » Что я делаю не так?
1
Domovoj
Пытаюсь выполнить пример из книги Марк Лутц - Программирование на Python, 4-е издание, II том, 2011
(стр 479)
#!/usr/bin/python 
"""
выполняется на сервере, выводит разметку HTML для создания новой страницы; 
url=http://localhost/cgi­bin/tutor0.py 
"""
print('Content­type: text/html\n')
print('<TITLE>CGI 101</TITLE>')
print('<H1>A First CGI Script</H1>')
print('<P>Hello, CGI World!</P>')

Пользую веб сервер предлагаемый в книге (стр 469):
import os, sys 
from http.server import HTTPServer, CGIHTTPRequestHandler
webdir = '.' # каталог с файлами HTML и подкаталогом cgi­bin для сценариев 
port   = 80  # http://servername/ если 80, иначе http://servername:xxxx/
if len(sys.argv) > 1: webdir = sys.argv[1]    # аргументы командной строки 
if len(sys.argv) > 2: port = int(sys.argv[2]) # иначе по умолчанию ., 80 
print('webdir "%s", port %s' % (webdir, port))
os.chdir(webdir)        # перейти в корневой веб­каталог 
srvraddr = ('', port)   # имя хоста, номер порта 
srvrobj = HTTPServer(srvraddr, CGIHTTPRequestHandler) 
srvrobj.serve_forever() # обслуживать клиентов до завершения

С html страницами всё ок. Открывает.

Файлик со сценарием положил в папку cgi-bin лежащую в той же директории что и сценарий сервера

При попытке открыть через браузер http://localhost/cgi-­bin/tutor0.py.
Выдаёт пустую страницу. В логе сервера же пишет: CGI script exited OK

Всё уже перепробовал… Что блин не так?


PS: Выполнение следующего скрипта
from urllib.request import urlopen
reply=urlopen('http://localhost:8080/cgi-bin/module1.py').read()
print(reply)
В консоли выдаёт результат b''



PPS: Пробовал выполнять всё вышеперечисленное на 2-х разных компах (Win8.1 Х64 и Win7 X86.) Версия компилятора-3,4
py.user.next
Два топика было уже http://python.su/forum/post/131140/
Domovoj
py.user.next
Два топика было уже http://python.su/forum/post/131140/
В том топе нашёл ссылку на другой топ в котором нашёл вот это
py.user.next
Попробуй этот набор.

И благодоря этому удалось выяснить, что…. файлы созданные в Phyton-проэкте в Visual Studio и в IDLE при своей синтаксической идентичности работают по разному. Первый вариант при работе через веб ведёт себя так, как описано в первом посте. Второй работает так, как ожидалось….

Осталось выяснить почему так… Причём в обоих случаях интерпретатор Python 64-bit 34


И тем не менее спасибо py.user.next так или иначе разобрался в первопричине…
PooH
Domovoj
Осталось выяснить почему так… Причём в обоих случаях интерпретатор Python 64-bit 34
Маркер последовательности байтов
py.user.next
Domovoj
Осталось выяснить почему так
Нужно сравнить их побайтово или просто найти различия в hex-редакторе.
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