【环境搭建】Mac10.15.7 配置Apache httpd python cgi

环境:

OS: Mac 10.15.7

Python: 3.11.1

参考文章:Mac配置CGI及运行python脚本 - yingzi__block - 博客园 

Mac配置CGI及运行python脚本

CGI(Common Gateway Interface),通用网关接口,它是一段程序,运行在服务器上如:HTTP 服务器,提供同客户端 HTML 页面的接口。

在进行 CGI 编程前,确保您的 Web 服务器支持 CGI 及已经配置了 CGI 的处理程序。

Mac上是自带Apache cgi的运行环境的,默认端口是80, 但是不可以直接用,需要进行相应的修改才可以正常运行。

一、修改配置

CGI的相关配置在httpd.conf文件中,不过需要修改一下配置。
修改httpd.conf文件需要root权限,权限设置:

sudo vim /etc/apache2/httpd.conf

1、找到LoadModule cgi_module libexec/apache2/mod_cgi.so,并解注释

2、找到AddHandler cgi-script .cgi, 并解注释。并且可以在后面增加.py,表示可以访问.py结尾的python脚本文件,也可以增加.pl,.shell等等,表示可以执行各种类型的脚本。

3、在httpd.conf中找到如下代码,目录/Library/WebServer/CGI-Executables就是cgi-bin运行的文件目录,我们创建的各种脚步需要放到这个目录下才能运行。

二、创建python脚本temp.py或者temp.cgi

#!/usr/bin/env python

print('Content-type:text/html\n')
print("<html><head><title>Books</title></head>")
print("<body>")
print("<h1>Books</h1>")
print("<ul>")
for i in range(10):
    print("<li>%s</li>" % i)
print('</ul>')
print('</body></html>')

将创建好的执行文件放在/Library/WebServer/CGI-Executables目录下,并赋予root权限

sudo chomd 755 temp.py

三、重启appachectl服务

 sudo apachectl restart

扩展:停止appachectl服务

sudo apachectl stop

四、打开浏览器,输入

http://localhost/cgi-bin/temp.py

页面如下:

标签: python

posted @ 2022-12-30 17:57  虹梦未来  阅读(22)  评论(0编辑  收藏  举报  来源