Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/333.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python cgi不';不执行HTML_Python - Fatal编程技术网

Python cgi不';不执行HTML

Python 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

我目前正在尝试构建一个python服务器,以便创建一个运行python代码作为后端的网站。为此,我首先使用cgi(作为测试)来显示html页面,但它不起作用

为此,我首先使用cgi(作为测试)来显示html页面,但它不起作用

下面是我的服务器的代码: 导入http.server

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文件的目录,但它仍然显示代码而不是网站