iandriyanov
Май 21, 2013 19:08:23
Добрый вечер.
ГУгление ничего определенного не дало, прошу помощи.
Изза задуманного, так сказать написать web-frontend для внешних программ. Однако не могу определится с чего начать. Но хотелось бы с простого. Открывается страница, на ней кнопки, например:
1 - top
2 - free
3 - uptime
..
n - …
Есть куча фреймворков, но не ужели нельзя быть проще. Запустить на порту веб-сервер питон и html какой то?
Спасибо.
JOHN_16
Май 22, 2013 02:14:03
iandriyanov
а что, cgi отменили? если вы об этом. Устанавливаете Веб-сервер (Apache, nginx, lighthttpd) и пишете для него cgi скрипт.
Ну либо берете Python и пишете свой сервер использую какой нибудь BaseHTTPServer или тп, в общем что есть в стандартной библиотеки. Кстати вот этот вариант действителньо может быть прост. Более того я даже так делал, в доках есть вся информация. Ничего сложного.
iandriyanov
Май 22, 2013 07:52:49
Дело в том что я не о сложностях. А о средствах и методах, вопрошаю.
Вот допустим, нужно установить пару-тройку модулей. Написать какой то скрипт, который при запуске, запустит на порту какой то демон. В браузере 0.0.0.0:5555, и видишь к примеру пару кнопок из сабжа. Клац на кнопку и получаешь ответ ввиде вывдоа на странице.
Примеры бы вот такого, если не трудно.
JOHN_16
Май 22, 2013 12:22:22
iandriyanov
Май 22, 2013 14:03:23
Еще нубских вопросов.
Кое что примерно наваял. Сервер
#!/usr/bin/env python
#-*- coding: utf-8 -*-
import BaseHTTPServer
import CGIHTTPServer
import cgitb; cgitb.enable() ## This line enables CGI error reporting
server = BaseHTTPServer.HTTPServer
handler = CGIHTTPServer.CGIHTTPRequestHandler
server_address = ("", 8000)
handler.cgi_directories = [""]
httpd = server(server_address, handler)
httpd.serve_forever()
- Скрпит cgi
#!/usr/bin/env python
#-*- coding: utf-8 -*-
import sys
print sys.version
- Браузер отдает как обычный текст, а не исполняет файл. Хотя на файле стоит исполнение. Как побороть? Куда ему воткнуть handler