1.安装 apache
$ brew update
$ brew install httpd24 #安装apache为2.4
2.开启路由rewrite功能
$ vim /usr/local/etc/httpd/httpd.conf
开启路由rewrite功能、虚拟主机
LoadModule rewrite_module libexec/apache2/mod_rewrite.so
LoadModule vhost_alias_module libexec/apache2/mod_vhost_alias.so
# Virtual hosts
Include /usr/local/etc/httpd/extra/httpd-vhosts.conf
注意:如果是ubuntu,需要指令开启重写(在ubuntu 测试环境搭建,我趟了好几个小时的坑,想要了解 ubuntu apache2 配置的请点击这里)
$ sudo a2enmod rewrite
3.添加VirtualHost配置
打开apache httpd-vhosts.conf
$ vim /usr/local/etc/httpd/extra/httpd-vhosts.conf
<VirtualHost *:80>
# The ServerName directive sets the request scheme, hostname and port that
# the server uses to identify itself. This is used when creating
# redirection URLs. In the context of virtual hosts, the ServerName
# specifies what hostname must appear in the request's Host: header to
# match this virtual host. For the default virtual host (this file) this
# value is not decisive as it is used as a last resort host regardless.
# However, you must set it for any further virtual host explicitly.
#ServerName www.example.com
ServerName test-local.com
ServerAdmin webmaster@localhost
DocumentRoot /sites/test-local/
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
<Directory /sites/test-local>
Options FollowSymLinks
AllowOverride All
Require all granted
</Directory>
# For most configuration files from conf-available/, which are
# enabled or disabled at a global level, it is possible to
# include a line for only one particular virtual host. For example the
# following line enables the CGI configuration for this host only
# after it has been globally disabled with "a2disconf".
#Include conf-available/serve-cgi-bin.conf
</VirtualHost>
4.添加.htaccess文件
在 DocumentRoot /sites/test-local/目录下创建.htaccess
RewriteEngine On
#RewriteBase /~admini/me/
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [QSA,L]
5.修改hosts文件
打开 hosts
$ sudo vim /private/etc/hosts
##
# Host Database
#
# localhost is used to configure the loopback interface
# when the system is booting. Do not change this entry.
127.0.0.1 localhost
127.0.0.1 test-local.com
6.重启apache
$ sudo apachectl restart