对于Python而言,我是一个新手,并将其整合到html中。我花了很多时间研究没有运气,所以我要求的只是一点帮助,或者我可以找到所需信息的区域。
我正在使用AMPPS来开发一个网站,因为它预先安装了mod_wsgi。我正在创建一个函数,用户可以在文本区域E.G。
中输入Python脚本> print 'Hello World'
用户按下执行按钮,然后结果显示在页面中。 我假设使用html和Python脚本发送并传递服务器端,因此mod_wsgi可以解码python并将其传回。
Hello World
问题是发送包含'print hello world'的脚本然后连接mod_wsgi服务器端需要什么命令或python命令?
一旦连接,如何显示共鸣?
AMPPS是否需要任何配置才能使mod_wsgi正常工作(阅读有关配置httpd.conf文件的线程)?
我很抱歉所有的问题,我只是完全被困扰,我的Python书已经超出我的想象。
亲切的问候安迪
答案 0 :(得分:1)
我做过的最简单的wsgi工作是使用web.py。
Here是apache mod_wsgi设置文档。
你需要一个带有GET方法的类,它使用输入表单呈现html,然后将脚本POST回POST方法(如果你愿意,可以在同一个类上)。你的post方法的响应将是你在python脚本上调用eval得到的结果。注意:这是一个非常危险的应用程序,因为用户现在可以在服务器上运行未经验证的python脚本,无论服务器进程运行的是什么用户。
示例代码:
import web
class Echo:
def GET(self):
return """<html><form name="script-input-form" action="/" method="post">
Script: <input type="text" name="script-body">
<input type="submit" value="Submit">
</form><html>"""
def POST(self):
data = web.input()
obj = compile(data['script-body'], '', 'exec')
result = eval(obj, globals(), locals())
web.seeother('/')
urls = (
'/.*', Echo,
)
if __name__ == "__main__":
app = web.application(urls, globals())
app.run()
else:
app = web.application(urls, globals()).wsgifunc()
我还必须发表评论,如果你只是在学习编程,只是学习python,并且没有做过任何apache配置,那么你同时也会喋喋不休。您可能希望以更易消化的部分学习这些项目。
答案 1 :(得分:0)
我建议你使用Bottle.js,这里是Bottlepy.org的一个例子:
from bottle import route, run, template
@route('/hello/:name')
def index(name='World'):
return template('<b>Hello {{name}}</b>!', name=name)
run(host='localhost', port=8080)
你可以download and install fast,使用Python 2.5+和3.x运行Bottle,并启用路由和自定义Web应用程序的响应。