Mac 10.8.5 上运行cgi

时间:2022-02-10 14:58:40

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

本文已同步到 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&period;10上无法提交代码的解决办法---备用

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

  3. &lbrack;翻译&rsqb;第三天- 在 Mac 上运行 &period;NET Core 应用程序

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

  4. Mono 4&period;0 Mac上运行asp&period;net mvc 5&period;2&period;3

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

  5. &lbrack;译&rsqb;在Mac上运行ASP&period;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&period;NET程序

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

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

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

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

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

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

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

随机推荐

  1. 多线程 ThreadPool线程池

    简单说明一下: 线程池可以看做容纳线程的容器:一个应用程序最多只能有一个线程池:ThreadPool静态类通过QueueUserWorkItem()方法将工作函数排入线程池: 每排入一个工作函数,就相 ...

  2. 设置word里的代码格式&comma;使之有底纹的效果

    目录 1    实现效果:    1 2    怎么才能在word里实现这样的显示?    1 如何设置word里的代码格式,使之有底纹的效果    2     实现效果: 怎么才能在word里实现这 ...

  3. CSS transform&lpar;变形&rpar;和transform-origin&lpar;变形原点&rpar;

    transform(变形)和transform-origin(变形原点)的说明: 目前这两个属性得到了除去ie以外各个主流浏览器webkit,firefox,opera的支持,属性名分别为 -webk ...

  4. boost asio 异步实现tcp通讯

    ---恢复内容开始--- asioboost   目录(?)[-] 一前言 二实现思路 通讯包数据结构 连接对象 连接管理器 服务器端的实现 对象串行化   一.前言 boost asio可算是一个简 ...

  5. bash中打印文件每一行及其行号

    #!/bin/bash linenumber=$(cat remoteIP.cfg |wc -l) currentline= for ip in $(cat remoteIP.cfg) do curr ...

  6. &lbrack;15&rsqb;Windows内核情景分析 --- 权限管理

    Windows系统是支持多用户的.每个文件可以设置一个访问控制表(即ACL),在ACL中规定每个用户.每个组对该文件的访问权限.不过,只有Ntfs文件系统中的文件才支持ACL. (Ntfs文件系统中, ...

  7. (转)区分LTE&comma;EPS&comma;EPC和SAE

    LTE:Long Term Evolution长期演进,是无线接口部分向4G演进的工作项目. 3GPP:The 3Rd Generation Partnership Project,第三代合作伙伴计划 ...

  8. tp5中ajax方式提交表单

    用ajax提交表单,迅速,快捷,实现页面无刷新提交表单. <!DOCTYPE html> <html lang="en"> <head> &lt ...

  9. ROS学习(十)—— 使用rosed编辑ROS中的文件

    一.rosed 1.作用: 直接编辑一个文件而不需要打开完整路径名 2.语法: rosed [package_name] [filename] 3.如果不知道编译哪个文件名,可以使用tab进行查询 r ...

  10. Kali Linux安装Remmina无法加载RDP插件

    原因是确少匹配的 libfreerdp库 可以到这里下载 http://ftp.de.debian.org/debian/pool/main/f/freerdp/ 我的电脑是64位的  我下载的是ht ...