开启 Mac 自带的 Apache,配置 PHP 和虚拟主机

阿里云产品限时红包,最高 ¥1888 元,立即领取

Mac 系统本身就预装了 Apache 和 PHP 。分别通过 apachectl -versionphp -v 进行查看。

1
2
3
4
5
6
7
➜  apachectl -version
Server version: Apache/2.4.34 (Unix)
Server built: Aug 17 2018 18:35:43
➜ php -v
PHP 7.1.23 (cli) (built: Nov 7 2018 18:20:35) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.1.0, Copyright (c) 1998-2018 Zend Technologies

Apache 相关命令

启动:sudo apachectl start

停止:sudo apachectl stop

重启:sudo apachectl restart

查看版本号:sudo apachectl -v

添加 php 模块

通过 vi 打开 apache 的配置文件,配置文件需要超级权限才能进行读写。

1
sudo vi /etc/apache2/httpd.conf

找到下面这行

1
# LoadModule php7_module libexec/apache2/libphp7.so

去掉前面的 # 注释。

保存,退出,重启 apache 就可以生效了。

配置 mysite 虚拟站点

1. 新建一个文件夹,作为你虚拟站点的物理存储位置

1
mkdir -p /Users/your_user/...your_site

2. 在 httpd.conf 中开启虚拟主机支持

1
sudo vi /etc/apache2/httpd.conf

找到下面这行

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

去掉前面的 # 注释。

3. 添加 DocumentRoot

找到 httpd.conf 中的如下内容

1
2
3
4
DocumentRoot "/Library/WebServer/Documents"
<Directory "/Library/WebServer/Documents" >
...
</Directory>

复制一份,直接添加到这段后面。

修改其中的 /Library/WebServer/Documents 为上面建好的文件夹路径 /Users/your_user/...your_site

保存,退出 httpd.conf

4. 添加虚拟主机配置

1
sudo vi /etc/apache2/extra/httpd-vhost.conf

在最后添加如下代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
# 'localhost' 虚拟主机
<VirtualHost *:80>
DocumentRoot "/Library/WebServer/Documents"
ServerName localhost
ErrorLog "/private/var/log/apache2/localhost-error_log"
CustomLog "/private/var/log/apache2/localhost-access_log" common
</VirtualHost>
# 'mysite' 虚拟主机
<VirtualHost *:80>
DocumentRoot "/Users/your_user/...your_site"
ServerName mysite
ErrorLog "/private/var/log/apache2/mysite-error_log"
CustomLog "/private/var/log/apache2/mysite-access_log" common
</VirtualHost>

保存退出。重启 apache 服务。

5. 修改 /etc/hosts

1
sudo vi /etc/hosts

添加 127.0.0.1 mysite,保存退出。

6. 添加 info.php

1
sudo vi /Users/your_user/...your_site/info.php

info.php 内容如下:

1
2
3
<?php
echo phpinfo();
?>

保存退出。

7. 浏览器中测试

在浏览器中输入 http://mysite/info.php,查看结果。