花了好几天时间做这个事,终于成功,把正确的做法记录一下。

如果是第一次使用apache,可以先执行sudo apachectl start,然后在浏览器里打开http://localhost看看效果,
如果显示It Works!说明apache正常,接下来就可以来做虚拟目录设置了。
首先,apache2在/private/etc/apache2目录,当然网上很多资料只提到/etc/apache2,其实指的是同一个目录,原因就不详说了。
然后,打开httpd.conf文件:sudo nano /etc/apache2/httpd.conf
虽然vi是编辑神器,但是我不怎么会用,nano也是第一次用,但是下方有提示,容易上手,而且设置里的操作也不多,适合不会vi的人使用。
按ctl+W进行查找,查找vhosts.conf字符,找到Include /private/etc/apache2/extra/httpd-vhosts.conf这行,如果前面有#,把#删除,然后ctl+X,Y,ctl+T,httpd.conf一连串操作进行保存。我只会这种笨方法来保存,如果你会更简单的最好。
很多资料上说还有一些其他的设置,我也试过,但当我成功实现了虚拟目录设置后,试着把这些设置还原,也并没有产生任何影响,至少在我的机器上,这些设置是没有起什么关键作用的,要不要做这些操作你来做主。
然后执行sudo apachectl -t,这个命令是用来检查apache的一些配置文件的语法是否正确的,如果访问服务时在浏览器里显示连接不上服务器,就有必要用这个命令来检查一下是不是哪个文件有问题了。
httpd-vhosts.conf这个文件是用来设置虚拟目录的,所以下面要在这个文件里设置自己指定的工作目录。
执行sudo nano /etc/apache2/extra/httpd-vhosts.conf,把文件中已有的两个配置注释掉

#<VirtualHost *:80>

#    ServerAdmin webmaster@dummy-host.example.com

#    DocumentRoot "/usr/docs/dummy-host.example.com"

#    ServerName dummy-host.example.com

#    ServerAlias www.dummy-host.example.com

#    ErrorLog "/private/var/log/apache2/dummy-host.example.com-error_log"

#    CustomLog "/private/var/log/apache2/dummy-host.example.com-access_log" com$

#</VirtualHost>

#<VirtualHost *:80>

#    ServerAdmin webmaster@dummy-host2.example.com

#    DocumentRoot "/usr/docs/dummy-host2.example.com"

#    ServerName dummy-host2.example.com

#    ErrorLog "/private/var/log/apache2/dummy-host2.example.com-error_log"

#    CustomLog "/private/var/log/apache2/dummy-host2.example.com-access_log" co$

#</VirtualHost>

然后添加自己的配置

<VirtualHost *:80>

DocumentRoot "/Users/用户名/projects"

ServerName www.sites.com

ErrorLog "/private/var/log/apache2/sites-error_log"

CustomLog "/private/var/log/apache2/sites-access_log" common

<Directory "/Users/用户名/projects">

Options FollowSymLinks Indexes

AllowOverride None

Order allow,deny

Allow from all

</Directory>

</VirtualHost>

这些是什么意思我也不多说了,总的来说就是指定虚拟目录、访问地址、虚拟目录访问权限。

然后保存并检查语法是否误。

最后,sudo nano /etc/hosts,在最后一行添加 127.0.0.1 www.sites.com

并保存。

最最后,sudo apachectl restart,重启apache服务,在浏览器里访问www.sites.com,你会看到自己工作目录下的文件和文件夹列表,恭喜,你成功了。

Mac 10.9 自带apache2虚拟目录设置的更多相关文章

  1. Silverlight项目笔记7:xml/json数据解析、TreeView、引用类型与数据绑定错误、图片加载、虚拟目录设置、silverlight安全机制引发的问题、WebClient缓存问题

    1.xml/json数据解析 (1)xml数据解析 使用WebClient获取数据,获取到的数据实例化为一个XDocument,使用XDocument的Descendants(XName)方法获得对应 ...

  2. Nginx虚拟目录设置

    location ~ .*\.html$   匹配所有以.html结尾的链接 --------------------------------------------------------- 关于a ...

  3. 30天轻松学习javaweb_tomcat的虚拟目录设置

    1.在server.xml文件的</Host>前面加入.需要重新启动Tomcat才能生效.<!--配置虚拟目录--><Context path="/itcast ...

  4. 怎么访问不在网站目录下文件(iis虚拟目录设置)

    很多时候,上传的文件多了,架设服务器当初设定的主目录所在盘空间往往就不够了,怎么办?这就需要设置虚拟目录.虚拟目录就是将其他目录以映射的方式虚拟到该FTP服务器的主目录下,这样,一个FTP服务器的主目 ...

  5. Tomcat虚拟目录设置

    ssh $host "rm -fr /var/www/$tomcat_name/webapps/*" 远程分发war包部署tomcat项目时,需要先清除项目目录. -------- ...

  6. Centos7.6 Apache 虚拟机禁止访问IP,允许访问多域名多个虚拟目录设置

    存放配置文件路径 /etc/httpd/conf.d自定义命名,配置文件后缀格式确保 *.conf注:这是两个配置文件,也是两种方法. # 一个WEB目录# 禁止以IP地址形式访问<Virtua ...

  7. apache虚拟目录设置

    <VirtualHost *:80> DocumentRoot "/xampp/htdocs/f" ServerName f.e-elitech.net</Vir ...

  8. Mac Yosemite OS10.10 Apache 虚拟主机设置

    昨天睡觉前开始挂机下载OS10.10 Yosemite,早上6点半就很兴奋地起来安装新系统了.安装完成后打开界面,感觉真的大不一样了,很优很美,很喜欢. 在下载各种更新,体验各种新功能的同时,我也不忘 ...

  9. FTP的搭建与虚拟目录作用<之简单讲解>

    操作系统:win7 VS2010编写WebService与在IIS的发布<之简单讲解>中我已经说了IIS安装与使用,不明白的可以跳过去看. 1.添加FTP站点 2. 3. 4. 5. zq ...

随机推荐

  1. fx-experience-tools

    http://fxexperience.com/2012/03/announcing-fx-experience-tools/ I have some cool new stuff for you t ...

  2. 排序算法之直接插入排序(java实现)

    package com.javaTest300; import java.util.Arrays; public class Test041 { public static void main(Str ...

  3. Android实例-Delphi开发蓝牙官方实例解析(XE10+小米2+小米5)

    相关资料:1.http://blog.csdn.net/laorenshen/article/details/411498032.http://www.cnblogs.com/findumars/p/ ...

  4. javascript中对象的每个实例都具有的属性和方法

  5. Session,Cookie 和local storage的区别

    以前从没有听说过local storage, 在网上查了一些资料,得到如下结论 从存储位置看,分为服务器端存储和客户端存储两种 服务器端: session 浏览器端: cookie, localSto ...

  6. POJ 3041 Asteroids (二分图最小点覆盖)

    题目链接:http://poj.org/problem?id=3041 在一个n*n的地图中,有m和障碍物,你每一次可以消除一行或者一列的障碍物,问你最少消除几次可以将障碍物全部清除. 用二分图将行( ...

  7. [转]省市二级联动(纯js实现)

    转至:http://www.jb51.net/article/41556.htm 实现原理: set_city("省名称",市select对象); 判断市select对象是否为空, ...

  8. Jstl标签的使用

    一. 配置 JSTL 包括两个 JAR 文件, jstl.jar 和 standard.jar .是什么没有必要管,重在应用( 1+1 ? =2 ,我们没有必要深究,只需要知道这么用就行.). 原文引 ...

  9. 继承虚函数浅谈 c++ 类,继承类,有虚函数的类,虚拟继承的类的内存布局,使用vs2010打印布局结果。

    本文笔者在青岛逛街的时候突然想到的...最近就有想写几篇关于继承虚函数的笔记,所以回家到之后就奋笔疾书的写出来发布了 应用sizeof函数求类巨细这个问题在很多面试,口试题中很轻易考,而涉及到类的时候 ...

  10. apacheserver下载、安装、配置

     1.下载 下载地址:apache下载地址 点击左側"Download"下的链接,打开例如以下页面 这里能够选择版本号.我选择2.4.16.单击"2.4.16" ...