标签归档:Apache

Mac Os X yosemite 中配置Apache

启动Apache

Mac自带Apache环境,所需要做的就是启动它然后进行相应的配置。

打开「终端(terminal)」,输入 「sudo apachectl -v」 ,可以看到Mac Os X Yosemite中内置的 Apache 版本。

在「终端」中输入 「sudo apachectl start」 启动 Apache。

打开浏览器在地址栏中输入「http://localhost」,会出现「It works!」页面。

页面默认的位置在 /Library/WebServer/Documents/ 下,这是 Apache 的默认根目录。 Apache 默认安装在 /etc/apache2/ 。

设置虚拟主机

修改 Apache 配置文件, 在 「/etc/apache2/httpd.conf」 ,使用 vim 进行编辑。

找到 「#include /private/etc/apache2/extra/httpd-vhosts.conf」 ,将其注释「#」删除。

重新启动 Apache , 「sudo apachectl restart」,虚拟主机设置开启。

配置虚拟主机,用 vim 打开 「/etc/apache2/extra/httpd-vhosts.conf」 进行配置,配置代码如下。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<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>
 
<VirtualHost *:80>
  DocumentRoot "/Users/yourLoginName/Sites"
  ServerName sites
  ErrorLog "/private/var/log/apache2/sites-error_log"
  CustomLog "/private/var/log/apache2/sites-access_log" common
  <Directory />
    Options Indexes FollowSymLinks MultiViews
    AllowOverride None
    Order deny,allow
    Require all granted
  </Directory>
</VirtualHost>

配置完成后保存文件,在hosts配置文件「/etc/hosts」中增加「127.0.0.1 sites」,重新启动Apache,中浏览器中输入「http://sites」即可正常访问。

本机使用.htaccess文件Apache配置

在本机调试PHP代码,使用.htaccess文件出现500 Internal Server Error的错误,修改Apache配置后即可正常使用,配置包含两部分:

1、开启rewrite_module

取消前面的注释。

LoadModule rewrite_module modules/mod_rewrite.so

2、设置AllowOverride属性

将你的目录或者别名配置中的AllowOverride修改为All。

AllowOverride All

修改完配置后重启Apache即可正常使用.htaccess文件。

在Apache中增加虚拟目录

在Apache中添加虚拟目录的步骤如下:

1、打开httpd.conf配置文件,找到IfModule alias_module,添加虚拟目录;

2、对虚拟目录进行设置;

3、重启apache服务;

比如,添加一个selfjobs的虚拟目录,首先在<IfModule alias_module>…</IfModule>之间添加:

添加虚拟目录

1
2
3
<IfModule alias_module>
    Alias /selfjobs/ "/var/www/html/phpjobs/"
</IfModule>

配置目录

1
2
3
4
5
6
<Directory "/var/www/html/phpjobs">
    AllowOverride None
    Options None
    Order allow,deny
    Allow from all
</Directory>

重启apache服务

1
apachectl start