在Mac OS X上配置Apache2

简介: 转载:http://www.cnblogs.com/yuanyq/p/3435022.html#2821339 最近一段时间在开发面向移动设备的网页,而且是静态网页。所以很需要一个HTTP服务器,简单明了的就可以。

 

转载:http://www.cnblogs.com/yuanyq/p/3435022.html#2821339

最近一段时间在开发面向移动设备的网页,而且是静态网页。所以很需要一个HTTP服务器,简单明了的就可以。在Windows上,HFS(http://www.rejetto.com/hfs/) 是我比较钟爱的一个小工具,并且还是免费。在Mac电脑上,尝试了几款轻量的HTTP文件服务器,感觉都不是很理想。比如App Store里面的SimpleHTTPServer,我甚至花了25块钱购买了Pro版,竟然连最基本的HTTP Range都不支持。还有就是Python带的那个SimpleHTTPServer模块,也是不太良好。只好回到Apache了。

Mac OS X本身就带了Apache(至少从10.7开始就有),接下来就是要一步一步的把Mac上的Apache配置起来。

先说一下环境:Mac OS X 10.9。

然后,来检查一下Mac上Apache的版本。打开一个终端应用。可以从LaunchPad>其他>终端来打开,也可以直接在Spotlight中输入terminal来打开。

在终端中输入apachectl -v查看安装的Apache版本。

user@my-mac:~ $ apachectl -v
Server version: Apache/2.2.24 (Unix)
Server built:   Aug 24 2013 21:10:43

 

然后直接去/etc/apache2下面修改Apache的配置文件httpd.conf(2.2版本的Apache还是一个配置文件)。由于这个文件的属主是root,所以普通用户需要使用sudo vi httpd.conf来编辑。

这个文件中比较关键的地方摘抄如下:

 

复制代码
User _www
Group _www
# 这里就是你的要提供服务的根路径。 DocumentRoot
"/Users/user/Documents/svn-copy/books"
# 这里是针对这个根路径的权限配置
<Directory "/Users/user/Documents/svn-copy/books"> Options Indexes FollowSymLinks MultiViews AllowOverride None Order allow,deny Allow from all </Directory>
复制代码

编辑完毕之后,保存.

出于安全性的考虑,默认情况下,Apache的httpd服务是使用比较低权限的用户身份去运行的,也就是上面截取的配置文件中的User _www和Group _www一行。所以首先你要允许_www访问你的文档,至少要能够读取。

启动Apache服务。默认的监听端口是80,所以需要root权限才能够启动apache。

user@my-mac:apache2 $ sudo apachectl start

然后,使用浏览器打开http://localhost。哦,给出了403访问被禁止的消息。那么,猜测是权限出现问题了。先看看Apache的日志吧:

cd /var/log/apache2
cat error_log
Permission denied: access to / denied (filesystem path '/Users/user/Documents/svn-copy') because search permissions are missing on a component of the path

 

根据日志中的错误信息,那么一定是在这个路径上,某一个或者多个文件夹不允许_www用户(httpd的运行用户)search(针对文件夹的 search对应的就是文件夹权限的x)。那么就从最后向最前找。很容易就发现/Users/user/Documents这个文件夹不允许其他人读取。 反正是自己内网开发测试用的,索性就允许其他用户读取好了。

user@my-mac:~ $ cd
user@my-mac:~ $ chmod o+rx Documents

 

然后再次访问http://localhost,一切OK了。

img_e00999465d1c2c1b02df587a3ec9c13d.jpg
微信公众号: 猿人谷
如果您认为阅读这篇博客让您有些收获,不妨点击一下右下角的【推荐】
如果您希望与我交流互动,欢迎关注微信公众号
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接。

目录
相关文章
|
2月前
|
监控 网络虚拟化
配置远程MAC镜像示例
配置远程MAC镜像示例
|
2月前
|
监控 网络虚拟化
配置本地MAC镜像示例
1. 创建VLAN10,将Switch与主机相连的接口加入VLAN10,实现主机与Switch间的二层互通。 2. 配置接口GE0/0/4为本地观察端口,负责向Server转发镜像报文。 3. 在VLAN10内配置MAC镜像,将VLAN10内指定MAC地址的主机访问Internet的流量复制一份到本地观察端口。
|
28天前
|
开发工具 git
mac git配置 idea
mac git配置 idea
24 1
|
11天前
|
存储 Java API
Mac安装jadx并配置环境
Mac安装jadx并配置环境
21 0
|
2月前
|
安全 Java iOS开发
MAC OS X 硬盘安装详细分解教程
MAC OS X 硬盘安装详细分解教程
48 1
|
2月前
|
编解码 Oracle iOS开发
VirtualBox虚拟机安装Mac OS X Lion系统详解
VirtualBox虚拟机安装Mac OS X Lion系统详解
76 1
|
2月前
|
安全 iOS开发 MacOS
Mac pro升级 MacOS 10.15 Catalina 后根目录是只读的, Recovery OS不能访问
Mac pro升级 MacOS 10.15 Catalina 后根目录是只读的, Recovery OS不能访问
27 0
|
2月前
|
Unix Shell Linux
史上最全:MAC OS X 命令行汇总
史上最全:MAC OS X 命令行汇总
34 0
|
2月前
|
IDE 5G 开发工具
HP4230s笔记本安装mac os总结(原创)
HP4230s笔记本安装mac os总结(原创)
22 0
|
2月前
|
应用服务中间件 nginx iOS开发
mac+alfred中的Workflow实现快速格式化nginx配置
mac+alfred中的Workflow实现快速格式化nginx配置
38 0

推荐镜像

更多