自从系统从OS X Mavericks 10.9升级到OS X Yosemite 10.10 后之前配置apache和php均不能正常使用了,
重新设置配置如下:
首先,查看当前系统的apache版本,终端下输入:httpd -v
Apache/2.4.0
1. 启动Apache 服务
sudo apachectl start
打开safari,访问:http://localhost,显示“It works!”表示Apache启动正常
当前访问的是Apache的默认目录,/Library/WebServer/Documents/
2. 配置用户访问目录
因为之前已经配置过用户目录,这里提一下,首先创建用户目录:mkdir ~/Sites 此时会在当前用户的根目录下创建一个Sites目录
可以在Sites目录下创建一个测试的html,或者cp /Library/WebServer/Documents/index.html.en ~/Sites/
修改当前用户目录的访问权限,这个与上一个版本一致没有变化,这里提一下修改方式:
cd /etc/apache2/users
sudo vim username.conf
注意:这里的username是当前用户名,请根据实际情况修改
输入以下内容:
<Directory "/Users/username/Sites/"> Options Indexes MultiViews AllowOverride All Order allow,deny Allow from all </Directory>
保存文件,重启apache ,sudo apachectl restart
修改当前文件的访问权限:sudo chmod 775 username.conf
此时打开safari,访问http://localhost/~username/ , 此时页面提示~username服务器不存在,我们还需要进入下一步的设置
3. 修改apache的httpd.conf文件
cd /etc/apache2/
sudo vim httpd.conf
找到以下信息,将其前面的#去掉:
LoadModule php5_module libexec/apache2/libphp5.so LoadModule authz_core_module libexec/apache2/mod_authz_core.so LoadModule authz_host_module libexec/apache2/mod_authz_host.so LoadModule userdir_module libexec/apache2/mod_userdir.so Include /private/etc/apache2/extra/httpd-userdir.conf
修改/etc/apache2/extra/httpd-userdir.conf
sudo vim /etc/apache2/extra/httpd-userdir.conf
找到一下信息修,将其前面的#去掉:
Include /private/etc/apache2/users/*.conf
此时访问http://localhost/~username/, 依然无法访问,提示:You don‘t have permission to access /~username/ on this server.
这里是就是新版本与老版本的区别了,需要重新打开httpd.conf文件,
sudo vim /etc/apache2/httpd.conf
找到
<Directory /> AllowOverride none Require all denied </Directory>
修改为:
<Directory /> AllowOverride none Require all granted </Directory>
重启apache,sudo apachectl restart
此时访问:http://localhost/~username/,显示:“It works!”,恭喜你,Apache配置成功!
4. 配置PHP
cd /etc
sudo cp /etc/php.ini.default /etc/php.ini
sudo apachectl restart
创建info.php文件测试php是否安装成功
cd ~/Sites
vim info.php
输入以下信息:
<html> <body> <h1>It works!</h1> <?php phpinfo(); ?> </body> </html>
打开浏览器,访问http://localhost/~username/info.php,显示一下信息表示php安装配置成功~