mac 下 apache设置

时间:2024-03-10 16:12:06

windows下面的apache配置

 

apache是mac下是默认就有的,我们只需使用命令开启、暂停和重启就好了

sudo apachectl start

sudo apachectl stop

sudo apachectl restart

 

但是这个apache 开启后,默认访问的是 /Library(资源库)/WebServer/Documents/ 目录,因此我在当前用户名 ay 下建立一个 Sites 文件夹,让其默认访问到这个文件,所以我需要对 /etc/apache2/httpd.conf  文件,进行了修改:

打开 httpd.conf文件,将

#DocumentRoot "/Library/WebServer/Documents"
#<Directory "/Library/WebServer/Documents">

  改为:

DocumentRoot "/Users/ay/Sites"
<Directory "/Users/ay/Sites">

  然后重启apache ,打开浏览器访问 localhost 就会默认访问到当前用户的 Sites 文件夹了。

但是这样修改后,/etc/apache2/users/ay.conf 配置文件就会失效

/etc/apache2/users/ay.conf 是当前用户的名称,这个文件是 apache 对当前用户的配置文件。然而将 DocumentRoot 和 Directory 修改后,将会导致类似的文件失效。

 

既然这样设置后已经失效,那我们如何设置虚拟主机呢?

步骤如下:

1、打开 /etc/apache2/httpd.conf 文件,添加你要访问的端口号:

Listen 2000

  

2、打开 /etc/apache2/httpd.conf 文件,找到  #Include /private/etc/apache2/extra/httpd-vhosts.conf  ,去掉前面的 # ,开启虚拟主机配置。

3、再找到 #LoadModule rewrite_module libexec/apache2/mod_rewrite.so ,去掉前面的 # ,来开启重写配置。

4、打开 /etc/apache2/extra/httpd-vhosts.conf 文件,添加如下代码:

NameVirtualHost *:2000
<VirtualHost *:2000> DocumentRoot "/Users/ay/Sites/requirejs-demo" ServerName require RewriteEngine On RewriteRule ^/(?!asset).* /Users/ay/Sites/requirejs-demo/index.html </VirtualHost>

5、重启 apache ,打开浏览器访问 localhost:2000 即可访问到 /Users/ay/Sites/requirejs-demo 目录了。

特别注意,mac对目录文件是区分大小写的。