Python cgi不';不执行HTML
我目前正在尝试构建一个python服务器,以便创建一个运行python代码作为后端的网站。为此,我首先使用cgi(作为测试)来显示html页面,但它不起作用 为此,我首先使用cgi(作为测试)来显示html页面,但它不起作用 下面是我的服务器的代码: 导入http.serverPython cgi不';不执行HTML,python,Python,我目前正在尝试构建一个python服务器,以便创建一个运行python代码作为后端的网站。为此,我首先使用cgi(作为测试)来显示html页面,但它不起作用 为此,我首先使用cgi(作为测试)来显示html页面,但它不起作用 下面是我的服务器的代码: 导入http.server PORT = 8888 server_address = ("", PORT) server = http.server.HTTPServer handler = http.server.CGIHTTPRequestH
PORT = 8888
server_address = ("", PORT)
server = http.server.HTTPServer
handler = http.server.CGIHTTPRequestHandler
handler.cgi_directories = ["/Users/mydirectory/Desktop/STAGE_AREMIS_FRANCE/python"]
print("Serveur actif sur le port :", PORT)
httpd = server(server_address, handler)
httpd.serve_forever()
下面是其中一个索引:
#编码:utf-8
import cgi
form = cgi.FieldStorage()
print("Content-type: text/html; charset=utf-8\n")
print(form.getvalue("name"))
html = """<!DOCTYPE html>
<head>
<title>Mon programme</title>
</head>
<body>
<form action="/index.py" method="post">
<input type="text" name="name" value="Votre nom" />
<input type="submit" name="send" value="Envoyer information au serveur">
</form>
</body>
</html>
"""
print(html)
导入cgi
form=cgi.FieldStorage()
打印(“内容类型:text/html;字符集=utf-8\n”)
打印(form.getvalue(“名称”))
html=”“”
周一节目
"""
打印(html)
我读过cgi的文档,我不明白为什么它不起作用。
有什么想法吗?
谢谢你的帮助 这里的主要问题是,
cgi\u目录
是相对于服务器目录根的目录列表,但看起来您正在设置相对于文件系统根的路径
默认情况下:
['/cgi-bin','/htbin']
。我建议保留默认设置,创建一个名为cgi-bin
的子目录,然后将脚本移动到那里。这里的主要问题是cgi\u目录
是相对于服务器目录根的目录列表,但看起来您正在设置一个相对于文件系统根的路径
默认情况下:
['/cgi-bin','/htbin']
。我建议保留默认设置,创建一个名为cgi-bin
的子目录,然后将脚本移动到那里。为什么要这样做?只是为了学习?我会使用Django这样的框架,否则你将需要重新发明并解决已经解决的问题。是的,我这样做是为了学习,但我觉得这种方法比使用Django更容易。你为什么要这样做?只是为了学习?我会使用Django这样的框架,否则你将需要重新发明并解决已经解决的问题。是的,我这样做是为了学习,但在我看来,这种方法比使用Django的方法更容易。谢谢你的回答,我不知道我的问题是否清楚。服务器激活后,他识别了目录并找到了文件,但没有显示站点,而是显示了代码。但我尝试了您的方法,现在我收到了以下错误消息:错误代码:403消息:CGI脚本不是普通文件(“/CGI bin/”)。错误代码解释:HTTPStatus.FORBIDDEN-Request FORBIDDEN-授权无效。我想您是在询问目录/cgi-bin
。即使您的脚本被称为index
您也必须将其附加到url。当我附加索引时,您是对的。它创建了一个带有.DS STORE和my index.py文件的目录,但它仍然显示代码而不是网站谢谢您的回答,我不知道我的问题是否清楚。服务器激活后,他识别了目录并找到了文件,但没有显示站点,而是显示了代码。但我尝试了您的方法,现在我收到了以下错误消息:错误代码:403消息:CGI脚本不是普通文件(“/CGI bin/”)。错误代码解释:HTTPStatus.FORBIDDEN-Request FORBIDDEN-授权无效。我想您是在询问目录/cgi-bin
。即使您的脚本被称为index
,您也必须将其附加到url。当我附加索引时,您是对的。它创建了一个带有.DS STORE和my index.py文件的目录,但它仍然显示代码而不是网站