mac下自带的apache配置cgi


title: mac下自带的apache配置cgi
date: 2017-06-12
tags: mac apache CGI


学习python时为了学习cgi部分,需要配置一个cgi的执行环境, 为此花了好几天时间, 过了很多坑,google, stackOverFlow, 以及apache的文档好久,目前cgi其实已经很少有人用, 所以文档都比较老了。会出一些问题, 大家看我下面的就行。 终于下面说一些需要配置的一些步骤

我的macOS Sierra版本是10.12.3。python2.7。

  1. 终端进入

    cd /etc/apache2
    

    ls一下可以看到一些文件,主要的配置文件的httpd.conf, 做配置前先备份一下

    sudo cp httpd.conf http.conf.bak
    

    需要输入电脑的密码

  2. 利用编辑器打开httpd.conf或者使用vim。我就使用vim给大家说吧

    sudo vim httpd.conf
    

    打开文件

    1. 第一步找到LoadModule cgi_module libexec/apache2/mod_cgi.so这一行, 取消前面的注释, 也就是去掉 #,vim的一些使用技巧大家可以google readline学习。

    2. 第二步找到下面这两行,

      DocumentRoot "/Library/WebServer/Documents"
      
      

      把路径改成 "/Users/username/Sites", 其中username是你的mac的用户名,在Users下面有一个你用户名的文件, 里面是你当前用户的一些内容, 进入这个文件夹,新建一个文件夹叫做Sites, 这个文件的图标是safari的指南针样子。

    3. 在上一步的那个Directory标签里面找到

      Options FollowSymLinks Multiviews
      

      在最后面加上 +ExecCGI, 下面这个样子

      Options FollowSymLinks Multiviews +ExecCGI
      
    4. 查找

      AddHandler cgi-script .cgi
      

      取消注释, 并且可以在后面添加后缀名, 这是允许cgi执行的文件类型。比如下面, 允许perl和python

      AddHandler cgi-script .cgi .pl .py
      
    5. 在下面几行找到

          AddType text/html .shtml
          AddOutputFilter INCLUDES .shtml
      

      也是去掉注释

  3. 完成之后如果是vim就按esc然后输入**:wq **保存并且退出

  4. 现在可以重启apache

    sudo aoachectl restart
    
  5. 浏览器输入 localhost/index.py查看效果

几点注意,文件和文件夹需要执行权限, 修改权限

chmod 755 Sites 
chmod 755 Sites/index.py

apache的日志可以进入/var/log/apache2/查看

希望大家都可以成功。

有问题留言。

你可能感兴趣的:(mac下自带的apache配置cgi)