Mac 配置python CGI

2019-10-14  本文已影响0人  CHASK

第一步,查看是否已有Apache

sudo apachectl start
sudo apachectl -v
显示如图.png

第二步,配置Apache

sudo vim /etc/apache2/httpd.conf

④找到如下的<Directory>,修改当中的内容配置CGI-Executables

#<Directory "/Library/WebServer/CGI-Executables">
#    AllowOverride None
#    Options None
#    Require all granted
#</Directory>
#原文如上⬆️(有多个<Directory>蛤,不要找错),修改成以下⤵️
<Directory "/Library/WebServer/CGI-Executables">
    AllowOverride None
    Options ExecCGI
    Require all granted
    Require host ip
</Directory>
1.按下esc键  
2.输入":wq"(保存退出) 
sudo apachectl restart

第三步:编写第一个CGI程序

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

#以下是目前最新python3.6的输出语法,2.x的版本的输出都没有小括号的
print("Content-type:text/html") #为HTTP头部的一部分,它会发送给浏览器告诉浏览器文件的内容类型
print('') #必须要有的空行,告诉服务器结束头部,以便浏览器区分head
print('<html>')
print('<head>')
print('<meta charset="utf-8">') #规定的html的字符编码,告诉给浏览器用什么方式来读这页代码
print('<title>这是标题</title>')
print('</head>')
print('<body>')
print('<h1>这是内容</h1>')
print('<h2>Hello world!</h2>')
print('</body>')
print('</html>')

#脚本语言的第一行,目的是指出这个文件中的代码用什么可执行程序去运行它
#第一行:告诉操作系统执行这个脚本的时候,调用/usr/bin下的python解释器
#第二行:告诉Python解释器,按照UTF-8编码读取源代码,否则在源代码中写的中文输出可能会有乱码
cd /Library/WebServer/CGI-Executables
chmod 755 hello.py

#为什么是755?在用数字代表权限
#7:代表文件所有者拥有的权限为可读(4)+可写(2)+可执行(1)
#5:代表文件所有者同组用户的权限为可读(4)+不可写(0)+可执行(1)
#5:代表公共用户的权限为可读(4)+不可写(0)+可执行(1)
#755表示该文件所有者对该文件具有读、写、执行权限,该文件所有者所在组用户及其他用户对该文件具有读和执行权限。linux文件权限一般都以8进制表示,格式为abc的形式,其中a,b,c各为一个数字,分别表示User、Group、及Other对该文件的操作权限
上一篇下一篇

猜你喜欢

热点阅读