я пробовал ещё Flask
вот примерный код скрипта у меня был:
#!/usr/bin/env python
#!-*-coding: cp1251 -7
import os,pymssql,sys
os.putenv("NLS_LANG","RUSSIAN_RUSSIA.UTF8")
#импортируем класс Flask
from flask import Flask
from flask import render_trmplate
DEBAG=True
#создаём экземпляр app класса Flask. Экземпляр уже явл wsgi-приложением
@app.route('/index1.html',methods=['GET'])
def fun_mssql():
.....
conect=pymssql.connect(......)
......
rez=conect.fetchall()
conect.close
return rez
def fun1(argumm):
.......
k=fun_mssql()
#работа с файлами и каталогами+запись логов в тектовые файлы+вывод результата в консоль через #print
.....
return render_template('index1.html',key_one=k)
if __name__=="__main__":
app.run(debug=True, host='0.0.0.0')
потом создал два каталога в ручную в той же директории,где расположен был скрипт:
/var/www/html/py
1)/var/www/html/py/static
2)/var/www/html/py/templates
static содержит файл стилей оформления style.css
templates содержит шаблон стартовой страницы index1.html, содержание которой примерно такое:
<!doctype html>
<title> Стартовая страница </title>
{% extends "index1.html" %}
{% block body %}
{% if session.logged_in %}
<meta content="text/html; charset=windows-1251">
<link href="style.css" rel="stylesheet" type="text/css"> </link>
<form>
<p><h1> Стартовая страница</h1></p>
<table>
<tr>
<th>Ответ на запрос</th>
</tr>
<tr>
<th>{{key_one}}</th>
</tr>
</table>
</form>
{% endif %}
<ul class=entries>
{% for entry in entries %}
{% else %}
<li><em>Unbelievable</em>
<% endfor %>
</ul>
{% endblock %}
запускаю свой скрипт на серверной части:
[nov@server py]# python hello.py
* Running on http://127.0.0.1:5000/
* Restarting with reloader...
сдалал вывод скрипт запустился на 5000 порту,значит и обратиться к серверной части нужно по 5000 порту,что и делаю в браузере с другой ПЭВМ этой же ЛВС, в строке url пишу:
http://[i]ip_adrr_server[/i]a:5000/index1.html
и получаю ответ:ОШИБКА 500: INTERNAL SERVER ERROR.
а на серверной части,где я запусти скрипт получаю сл информацию:
* Running on http://127.0.0.1:5000/
* Restarting with reloader...
127.0.0.1 - - [17/Feb/2012 11:37:54] "GET /index1.html HTTP/1.0" 500 -
----------------------------------------
Exception happened during processing of request from ('127.0.0.1', 44224)
Traceback (most recent call last):
File "/usr/lib/python2.6/SocketServer.py", line 283, in _handle_request_noblock
self.process_request(request, client_address)
File "/usr/lib/python2.6/SocketServer.py", line 309, in process_request
self.finish_request(request, client_address)
File "/usr/lib/python2.6/SocketServer.py", line 322, in finish_request
self.RequestHandlerClass(request, client_address, self)
File "/usr/lib/python2.6/SocketServer.py", line 618, in __init__
self.finish()
File "/usr/lib/python2.6/SocketServer.py", line 661, in finish
self.wfile.flush()
File "/usr/lib/python2.6/socket.py", line 303, in flush
self._sock.sendall(buffer(data, write_offset, buffer_size))
error: [Errno 32] Broken pipe
пробовал из локали обратиться к сервеной части,тоже самое…даже попробовал таким образом из локале обратиться:
wget '
http://127.0.0.1:5000/index1.html'
тоже самое получил.
вообщем как сами понимаете,результата я не достиг((+и не понял как кнопку реализовать.