美文网首页我爱编程
Mac apache 配置python CGI

Mac apache 配置python CGI

作者: 京哥 | 来源:发表于2018-01-12 20:24 被阅读0次

在mac上配置CGI:搞了两大天,遍寻个大论坛贴吧谷歌百度,教程倒是一大把,但都是这在之前几年的旧东西,现在的鬼技术蹭蹭蹭的升级,早已是面目全非,无奈只能自己摸索着尝试:

首先根据网上的教程打开你的 /private/etc/apache2/httpd.conf 配置文件,
这个文件里有三处 Directory :
在DocumentRoot下面的Directory不需要修改:

DocumentRoot "/Library/WebServer/Documents"
<Directory "/Library/WebServer/Documents">

需要修改其他两个<Directory >:

在第一个 Directory中把内容改成如下:

<Directory "/Library/WebServer/CGI-Executables">
     AllowOverride None
     Options ExecCGI
     Order allow,deny
     Allow from all
</Directory>

在第二个 Directory中把内容改成如下:

<Directory "/Library/WebServer/CGI-Executables">
     Options All
</Directory>

因为看他们的配置教程都没有明确的说明具体改动的地方,导致我把两个Directory中的内容都改成了这个
AllowOverride None
Options ExecCGI
Order allow,deny
Allow from all
结果最后运行起来死都不知道啥问题!

然后 再修改 #LoadModule cgi_module libexec/apache2/mod_cgi.so,前面有#注释,把#去掉就可以了

LoadModule cgi_module libexec/apache2/mod_cgi.so

然后修改ScriptAliasMatch,他也是被注释上的,直接把前面的#去掉就好:


image.png

接着修改#AddHandler cgi-script .cgi,也是直接把前面的#去掉,然后在后面加上 .py,以便让服务器能解析.py文件:


image.png

完成以上配置后重启apache:
sudo apachectl restart

最后在 /Library/WebServer/CGI-Executables 的文件夹里新建一个hello.py的文件:
CGI-Executables 这个文件夹是CGI脚本的根目录,专门存放CGI脚本的地方


image.png

hello.py的内容:

#!/usr/bin/python
# -*- coding: UTF-8 -*-

print("Content-type:text/html")
print('')                      
print('<html>')
print('<head>')
print('<title>Hello</title>')
print('</head>')
print('<body>')
print('<h2>hello CGI</h2>')
print('</body>')
print('</html>')

这是目前最新python3.6的输出语法,之前2.x的版本的输出都没有小括号的。
注:
//头一行要加上这两句注释,不然会报语法错误
#!/usr/bin/python
#-*- coding: UTF-8 -*-

print("Content-type:text/html")
print('') //这里的输出空行必须要有,以便浏览器区分head,如果没有这句话;就会爆这个错:Internal Server Error


image.png

一开始报这个错。我也不知道是语法错误,后来根据apache 的log才知道是语法错误!!

最后要给hello.py 设置权限:
在存放hello.py 的文件夹目录上执行如下命令:

$: chmod 755 hello.py

最后在浏览器里打开: localhost/cgi-bin/hello.py


image.png

至此 完成,其实配置很简单,但是不知道的会绕很多弯路,希望对需要的人有帮助!

相关文章

  • mac下 配置 CGI python

    python CGI MAC下的环境配置 之前查的资料都太老 Unix系统自带apache 配置CGI很好配 但...

  • 【转】apache 支持php,python cgi的配置方法

    apache 同时支持php,python cgi配置方法 1. 我用的是mac系统默认安装了apache,这里就...

  • Mac apache 配置python CGI

    Mac OS X默认是安装了 Apache 的,要启动 Apache 服务需要手动通过命令行开启。 启动Apach...

  • Mac apache 配置python CGI

    在mac上配置CGI:搞了两大天,遍寻个大论坛贴吧谷歌百度,教程倒是一大把,但都是这在之前几年的旧东西,现在的鬼技...

  • Python+Apache+CGI

    环境安装好(包括Python、Apache以及相关的组件),从CGI配置开始。 1.配置CGI环境 Apache支...

  • Python-CGI配置

    准备 Apache 支持 CGI 配置,如果没有配置 Apache 服务器,请参考《Mac-Apache服务器配置...

  • Mac 配置python CGI

    配置过程遇到了很多坑,于是来写一份傻瓜教程! Mac OS X默认安装了Apache,可直接打开终端开始安装 第一...

  • Mac上python配置Apache环境

    最近在学习python的CGI,需要配置Apache的环境,看着http://www.runoob.com/pyt...

  • mac上使用tomcat配置CGI

    如果没有安装tomcat可以使用apache调用CGI,参考apache配置CGI。如果安装了tomcat,可以配...

  • MAC+Apache+Python3+CGI

    1、安装apache 2、brew install httpd24 3、vim /usr/local/etc/h...

网友评论

    本文标题:Mac apache 配置python CGI

    本文链接:https://www.haomeiwen.com/subject/stxqoxtx.html