搭配置搭了好久,花了近半天时间,有必要把过程记录下。

本文已同步到 icocoa.tk, 欢迎访问

Mountain Lion上Setting设置里已经取消了web share,必须要自己启动apache服务。启动命令:

//启动
sudo apachectl start
//重启
sudo apachectl restart//

然后在用户主目录下找到Site目录,这里用来放置html。

这里我输入后,无论访问http://localhost/还是http://localhost/~username/index.html都不能访问。

后来我想起我安装了xampp,通过xampp的控制台开启apache,则可以访问上述地址。猜测xampp的某些设置影响了系统原有的设置。于是,果断卸载了xampp。这时,重启下apache,果然可以访问了。

接下来,要修改apache的一些配置,来开启cgi。

编辑apache配置文件:/etc/apache2/httpd.conf,取消注释:
AddHandler cgi-script .cgi (1)
AddType text/html .shtml (2)
AddOutputFilter INCLUDES .shtml(3)
(1)是描述对什么样的文件视为cgi文件,用户可添加,比如添加 perl文件:
AddHandler cgi-script .cgi .pl
(2)和(3)是表示允许服务端返回的文件内容格式、和包含的输出文件;

检查cgi_module是否被注释掉了:
LoadModule cgi_module modules/mod_cgi.so

编辑文件:/etc/apache2/users/yourusername.conf
<Directory "/Users/yourusername/Sites/">
Options Indexes FollowSymLinks MultiViews ExecCGI
DirectoryIndex index.html index.cgi
AllowOverride None
Order allow,deny
Allow from all
</Directory>
这里是给Sites目录设置属性,ExecCGI就是开启cgi。接下来就可以把cgi或pl文件放置在Sites目录下任何地方了。

最后赋予脚本文件可执行权限。

所有上述的都完成后,需要重启apache。如果这时,cig还是不能访问,跳出:

Forbidden

You don't have permission to access /~username/test.cgi on this server.

Additionally, a 404 Not Found error was encountered while trying to use an ErrorDocument to handle the request

那么,你需要做的就是重启你的mac!!(我就是在这里花费太多时间!!)

关于CGI开启部分 主要参考了:
mac下 apache cgi 配置
CGI Programming With Apache and Perl on Mac OS X

Apache Tutorial: Dynamic Content with CGI

 

Mac 10.8.5 上运行cgi的更多相关文章

  1. Apache Spark源码走读之10 -- 在YARN上运行SparkPi

    y欢迎转载,转载请注明出处,徽沪一郎. 概要 “spark已经比较头痛了,还要将其运行在yarn上,yarn是什么,我一点概念都没有哎,再怎么办啊.不要跟我讲什么原理了,能不能直接告诉我怎么将spar ...

  2. 关于github在mac 10.10上无法提交代码的解决办法---备用

    接下来是正文:本文主要说明在mac 10.10版本下github无法提交代码的问题 首先如果你是一个用终端提交代码的,你可以不用看这篇文章了,这篇文章主要是用于解决github客户端提交代码的问题,此 ...

  3. [翻译]第三天- 在 Mac 上运行 .NET Core 应用程序

    原文: http://michaelcrump.net/part3-aspnetcore/ *** 简介 该系列文章的完整列表如下: 第一天 - 在 Windows 下安装和运行 .NET Core ...

  4. Mono 4.0 Mac上运行asp.net mvc 5.2.3

    Mono 4.0 已经发布,二进制包已经准备好,具体的发布说明参见:http://www.mono-project.com/docs/about-mono/releases/4.0.0/. 今天在Ma ...

  5. [译]在Mac上运行ASP.NET 5

    原文:http://stephenwalther.com/archive/2015/02/03/asp-net-5-and-angularjs-part-7-running-on-a-mac 这篇文章 ...

  6. 简单理解在Mac OS X上运行ASP.NET程序

    运行ASP.NET程序的三要素: 1) CLR(.NET运行时) 2) KRE(ASP.NET运行时) 3) Web服务器 所以在Mac OS X上运行ASP.NET程序,就需要对应这三要素的东西: ...

  7. SLAM+语音机器人DIY系列:(二)ROS入门——10.在实际机器人上运行ROS高级功能预览

    摘要 ROS机器人操作系统在机器人应用领域很流行,依托代码开源和模块间协作等特性,给机器人开发者带来了很大的方便.我们的机器人“miiboo”中的大部分程序也采用ROS进行开发,所以本文就重点对ROS ...

  8. 如何在Windows 10上运行Docker和Kubernetes?

    如何在Windows 10上运行Docker和Kubernetes? 在Windows上学习Docker和Kubernetes,开始的时候会让你觉得无从下手.最起码安装好这些软件都不是一件容易的事情. ...

  9. mac 上运行cassandra出现的java.net.MalformedURLException: Local host name unknown: java.net.UnknownHostException: : : unknown error错误解决方法

    mac 上运行cassandra出现的java.net.MalformedURLException: Local host name unknown: java.net.UnknownHostExce ...

随机推荐

  1. WebService程序数据集之WSDL取数

    在通用的webservice集合中,在集合中使用wsdl取数的方式获取数据,并将数据转换为程序数据集,那么怎样通过wsdl取数并转换为程序数据集呢? 首先将wsdl获取到的数据数据转换为二维数组,然后 ...

  2. 01_Netty简述

    [Netty的NIO模型与常见的NIO模型对比] [原始的BIO模型] ServerSocket serverSocket = Socket clientSocket = serverSocket.a ...

  3. ODP.Net Tips

    Overview Oracle Data Provider for .NET是Oracle 提供的.Net版本的数据库连接组件.下载路径. 使用的核心DLL是Oracle.DataAccess.dll ...

  4. Android解析WindowManagerService(三)Window的删除过程

    前言 在本系列文章中,我提到过:Window的操作分为两大部分,一部分是WindowManager处理部分,另一部分是WMS处理部分,Window的删除过程也不例外,本篇文章会介绍Window的删除过 ...

  5. JS 根据子网掩码,网关计算出所有的IP范围

    // 验证IP的正则 var ip_reg = /^(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0- ...

  6. Java Web开发中的转发和重定向的问题

    Java Web的页面实现跳转有两种方式,一种是转发,另外一种是重定向.一般来说,转发比重定向快.重定向会经过客户端,转发却不会. 转发 request.getRequestDispatcher(&q ...

  7. PURGE 的用法说明

    PURGE PurposeUse the PURGE statement to remove a table or index from your recycle bin and release al ...

  8. 自动化测试基础篇--Selenium框架设计(POM)

    一.自动化测试框架 感谢木棉花的漂泊分享,内容转自链接:http://www.cnblogs.com/fengyiru6369/p/8053035.html 1.什么是自动化测试框架 简单来说,自动化 ...

  9. aspnetcore 认证相关类简要说明一

    首先我想要简要说明是AuthenticationScheme类,每次看到Scheme这个单词我就感觉它是一个很高大上的单词,其实简单翻译过来就是认证方案的意思.既然一种方案,那我们就要知道这个方案的名 ...

  10. 计算机作业(HTML简单框架网页制作) 物联网 王罗红