apache 配置
常用命令
sudo apachectl start
sudo apachectl stop
sudo apachectl restart
sudo apachectl configtest // debug apache 神器站点配置
在 mac 里面有两个地方可以放站点,一个是系统层面,一个是用户层面,系统层面的默认目录在 /Library/Webserver/Documents,用户层面的默认目录在 ~/Sites/。
通常来讲,我们只需要在用户层面配置就好了,在cd 到用户目录下,创建 sites 文件夹。
同时我们需要在 apache 里面配置 user 文件,在 /etc/apache2/user/ 里面,以你的用户名username命名问,username.conf,username是对应你的用户名的。在里面需要配置 direcroty,配置为如下
<Directory "/Users/steven/Sites/">
Options Indexes FollowSymLinks
AllowOverride All
Order allow,deny
Allow from all
Require all granted
</Directory>
作用不多说,具体可以上网查看,主要是用于保证可以重写,权限可以访问。
- 虚拟目录配置
有时候我们的文件夹的目录和我们实际生产的目录并不一致,项目文件的目录嵌套比较深,但是我们希望在显示出来的时候,是从某一个目录开始为根目录,这个时候我们需要配置虚拟目录。
同样去到 /etc/apache2/extra,找到 httd-vhost.conf,注释掉原来的配置,配置如下代码:
<VirtualHost *:80>
DocumentRoot "/Users/steven/Sites/laravel/public"
ServerName mysite.com
ErrorLog "/private/var/log/apache2/mysite-error_log"
CustomLog "/private/var/log/apache2/mysite-access_log" common
<Directory />
Options Indexes FollowSymLinks
AllowOverride All
Order allow,deny
Allow from all
Require all granted
</Directory>
</VirtualHost>
同时在 /etc/hosts 文件里面,添加上对应的映射
127.0.0.1 mysite.com
- 重写模块开启
LoadModule rewrite_module libexec/apache2/mod_rewrite.so