1. 修改 apache 服务器指向的根目录

macOS 默置了 apache,有以下几个常用命令:

sudo apachectl -v // 查看 apache 版本
httpd -v // 同上
sudo apachectl start
sudo apachectl stop
sudo apachectl restart
sudo apachectl -t // 查看当前 apache 运行情况

当我们启动 apache 后,在浏览器地址栏输入 localhost,看到 "It works!" 字样就对了。这个 html 文件位于 /Library/Webserver/Documents/ 下,该目录也就相当于 wampserver 下的 www 目录。如果不修改默认指向的目录,以后所有的文件都必须放在该目录下,不大方便,我们可以修改 /etc/apache2/httpd.conf 文件,搜索 DocumentRoot,进行修改(sudo vi http.conf)。(因为接下来的每个虚拟主机配置都会设定 DocumentRoot,所以修改这里的 DocumentRoot 看起来并不是必须的)

DocumentRoot "/Users/fish/www"
<Directory "Users/fish/www">

比如我把根目录指向了 /Users/fish/www 目录下,这时启动 apache,输入 localhost,打开的就是该目录下的 index 文件了。

2. 配置文件中开启 virtual hosts

上一步骤中的 httpd.conf 文件中,打开 vhosts 开关(去掉行首注释 #)

Include /private/etc/apache2/extra/httpd-vhosts.conf

3. 修改 httpd-vhosts.conf 文件

该文件位于 /etc/apache2/extra/ 文件夹中。现在比如我在 /Users/fish/www/ 目录中新建了个名为 test 的文件夹,想用 www.test.com 去访问,可以在该文件中添加如下:

<VirtualHost *:80>
    DocumentRoot "/Users/fish/www/test"
    ServerName www.test.com
    ErrorLog "/private/var/log/apache2/dummy-host.example.com-error_log"
    CustomLog "/private/var/log/apache2/dummy-host.example.com-access_log" common
</VirtualHost>

这里注意修改的话都要用管理员权限 (sudo vi xxx)

4. 修改 hosts 文件

sudo vi /etc/hosts

添加一行 127.0.0.1 www.test.com

5. localhost 不能访问了?

这个时候,我们启动或者重启下 apache,便能访问 www.test.com,但是访问 localhost 却出错了,这时我们需要再次修改 httpd-vhosts.conf 文件,添加如下:

<VirtualHost *:80>
    DocumentRoot "/Users/fish/www/"
    ServerName localhost
    ErrorLog "/private/var/log/apache2/dummy-host.example.com-error_log"
    CustomLog "/private/var/log/apache2/dummy-host.example.com-access_log" common
</VirtualHost>

6. 其他

如果出现这样错误 AH00557: httpd: apr_sockaddr_info_get() failed for fishdeMacBook-Pro.local,在 hosts 文件中添加 127.0.0.1 fishdeMacBook-Pro.local 即可。

macOS 中 apache vhosts 配置备忘的更多相关文章

  1. 生产服务器环境最小化安装后 Centos 6.5优化配置备忘

    生产服务器环境最小化安装后 Centos 6.5优化配置备忘 作者:Memory 发布于:2014-8-13 15:00 Wednesday 服务器 本文 centos 6.5 优化 的项有18处: ...

  2. 生产服务器环境最小化安装后Centos 6.5优化配置备忘

    生产服务器环境最小化安装后 Centos 6.5优化配置备忘 本文 centos 6.5 优化 的项有18处,列表如下: 1.centos6.5最小化安装后启动网卡 2.ifconfig查询IP进行S ...

  3. Manjaro启动项目及服务配置备忘

    Manjaro启动项目及服务配置备忘 =============== 系统服务GUI管理搜索 systemdgenie 并安装,类似Windows的服务管理. ================ 系统启 ...

  4. mac中apache+mysql+php+phpMyAdmin配置备忘

    Mac OS X 内置Apache 和 PHP,使用起来非常方便.本文以Mac OS X 10.6.3和为例.主要内容包括: 启动Apache 运行PHP 安装MySQL 使用phpMyAdmin 配 ...

  5. centos配置备忘(apache\php\mysql)

    1. 安装apache\php\mysql=======================================yum -y install httpd php mysql mysql-ser ...

  6. jenkins持续集成配置备忘

    配过好几次,但是老忘记.记录备忘. 安装下列插件: ssh和git插件用来下载源码 publish over ssh 插件用来发布代码到测试环境. email插件用来更强大的email配置. file ...

  7. wampserver2.5 在 Win7 64位下的相关配置备忘

    发现运行和配置这个版本和之前的Wampserver有些差异,特此记录 1).wampserver2.5-Apache-2.4.9-Mysql-5.6.17-php5.5.12-64b,另外有可能需要安 ...

  8. Web Config配置备忘

    数据压缩 <httpCompression>节点用于配置静态压缩和动态压缩,<urlCompression>则用于开关 http压缩 <urlCompression do ...

  9. vps_centos_7_系统环境常规配置备忘

    1.设置时区(东八区) 1> 选择亚洲东八区北京时间:tzselect (按照提示选择指定的序号直到北京时间) 2>替换时区文件 :cp /usr/share/zoneinfo/Asia/ ...

随机推荐

  1. Asp.net MVC 简单实现生成Excel并下载

    由于项目上的需求,需要导出指定条件的Excel文件.经过一翻折腾终于实现了. 现在把代码贴出来分享 (直接把我们项目里面的一部份辅助类的代码分享一下) 我们项目使用的是Asp.Net MVC4.0模式 ...

  2. 自学Zabbix3.10.1-事件通知Notifications upon events-媒介类型

    自学Zabbix3.10-事件通知Notifications upon events-媒介类型 zabbix触发器到了要发送通知的情况下,需要一个中间介质来接收并传递它的消息给运维们,以往用nagio ...

  3. 为 Azure IoT Edge 设备部署 Azure Stream Analytics 服务

    在前面的两篇文章<Azure IoT Edge on Windows 10 IoT Core>和<Azure IoT Edge on Raspberry Pi 3 with Rasp ...

  4. Android查缺补漏--ContentProvider的使用

    ContentProvider (内容提供者)是一种共享型组件,可以为系统内应用于与应用之间提供访问接口. ContentProvide要想正常工作需要三个关键点: ContentProvider:对 ...

  5. C图形库Easyx的使用

    学习Eaxy X图形库后我的成果: 花了一周时间做出并完善了Flappy Bird,目前功能如下: 1. 背景的显示 2. 加入小鸟image 3. 小鸟自由下落,按空格键/鼠标右键后上升 4. 加入 ...

  6. OC学习16——对象归档

    转载自  OC学习篇之---归档和解挡 OC中的归档就是将对象写入到一个文件中,Java中的ObjectInputStream和ObjectOutputStream来进行操作的.当然在操作的这些对象都 ...

  7. iOS 5个Xcode开发调试技巧

    转自Joywii的博客,原文:Four Tips for Debugging in XCode Like a Bro    1.Enable NSZombie Objects(开启僵尸对象) Enab ...

  8. Python学习日记:day5-------dict字典

    #字典dict------->唯一的映射类型 1.数据类型的划分 数据类型划分为可变数据类型和不可变数据类型. 不可变数据类型:tupe(元组).bool.int.str           可 ...

  9. 最全linux命令

    arch 显示机器的处理器架构(1) uname -m 显示机器的处理器架构(2) uname -r 显示正在使用的内核版本 dmidecode -q 显示硬件系统部件 - (SMBIOS / DMI ...

  10. treeview插件使用:根据子节点选中父节点

    鄙人公司没有专门的前端,所以项目开发中都是前后端一起抡.最近用bootstrap用的比较频繁,发现bootstrap除了框架本身的样式组件外,还提供了多种插件供开发者选择.本篇博文讲的就是bootst ...