@HeartOfProgrammer

Почему веб сервер не хочет запускать сайт на python 3?

Создал папку cgi-bin там создал файл index.py с кодом
import mymodule as m

print("Content-type: text/html")
print()
print("<h1>Hello world!</h1>")

a = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}
b = {20, 3, 4, 23, 11, 17, 55, 8}

resultCombination = m.combination(a, b)
print('Объединение Множеств A и B', resultCombination)
resultIntersection = m.intersection(a, b)
print('Пересечение Множеств A и B', resultIntersection)
resultSubsets = m.subsets(a, b)
print('Подмножества Множеств A и B', resultSubsets)
resultDefference = m.difference(a, b)
print('Разница Множеств A и B', resultDefference)
resultSimmetricDifference = m.symmetric_difference(a, b)
print('Симметрическая разница Множеств A и B', resultSimmetricDifference)


Запускаю веб сервер командой python3 -m http.server --cgi
Перехожу по адресу localhost:8000
Вот что выдает по адресу localhost:8000
698b833342594691bd9600eacea01452.png
Вот что terminal выдает
99e00880b1aa434f8f37eab7f4810207.png

Гуглил проблему, возможно это проблема в apache? Как решать эту проблему?
  • Вопрос задан
  • 630 просмотров
Пригласить эксперта
Ответы на вопрос 2
Ну как минимум не импортирован cgi.
https://wiki.python.org/moin/CgiScripts
Ответ написан
Комментировать
@abcd0x00
Права ты забыл выставить и шебанг.

script.py
#!/usr/bin/env python3

print('Content-type: text/html; charset=utf-8')
print()
print('<h1>Hello world!</h1>')

a = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}
b = {20, 3, 4, 23, 11, 17, 55, 8}

print('<p>A =', a)
print('<p>B =', b)
print('<p>Объединение Множеств A и B =', a | b)


[guest@localhost serv]$ ll
итого 4
drwxrwxr-x. 2 guest guest 4096 авг 11 11:43 cgi-bin
[guest@localhost serv]$ ll cgi-bin/
итого 4
-rwxrwxr-x. 1 guest guest 289 авг 11 11:43 script.py
[guest@localhost serv]$


[guest@localhost serv]$ python3 -m http.server --cgi
Serving HTTP on 0.0.0.0 port 8000 ...
127.0.0.1 - - [11/Aug/2016 11:45:30] "GET /cgi-bin/script.py HTTP/1.1" 200 -
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы