我是Python后端开发的新手,我试图设置一个apache来使用cgi-bin和一个简单的Python文件。
这是我的 apache2.conf(我添加了以下内容):
<Directory "/var/www/cgi-bin">
AllowOverride None
Options ExecCGI
Order allow,deny
Allow from all
AddHandler cgi-script .py
</Directory>
<Directory "/var/www/cgi-bin">
Options All
</Directory>
这是我的 python 文件,它名为 hello.py,位于 /var/www/cgi-bin:
#!/usr/bin/python3
print ("Content-type:text/html\r\n\r\n")
print ('<html>')
print ('<head>')
print ('<title>Hello Word - First CGI Program</title>')
print ('</head>')
print ('<body>')
print ('<h2>Hello Word! This is my first CGI program</h2>')
print ('</body>')
print ('</html>')
我的 apache 已启动并正在运行,但是当我访问:http://localhost/cgi-bin/hello.py 时,出现以下错误:
未找到 在此服务器上找不到请求的 URL。
Apache/2.4.54 (Ubuntu) 服务器位于本地主机端口 80
我已经反弹了apache,停止了它并从头开始,回来时完全没有错误。
您的 Apache 服务器似乎配置不正确,因此不允许执行 CGI 脚本。请务必检查您的错误日志、文件权限并检查您的目录路径是否存在。此外,如果您使用虚拟主机,请检查虚拟主机的配置是否允许使用 CGI 脚本