MAC OS X 中配置Apache+MySQL+PHP及rewrite功能

作者: onlyfu
发布时间:2015-07-21 10:23:42

MAC默认装有Apache和PHP,只需要开启Apache就可以了。

APACHE

图型方式开启Apache:

  1. 进入系统偏好设置
  2. 进入共享
  3. 勾选WEB共享

命令方式:

  1. 进入root权限(su -),如果是第一次,需要设置一下root密码,用命令:sudo passwd root,第一个密码是管理员密码,之后即可设置root密码
  2. 进入root权限后,使用命令:apachecctl start。即可开启apache

这样子,Apache就开启了。可以直接用http://localhost/访问。WEB目录在:/library/WebServer/Documents/下

PHP

Apache开启后,PHP就可以直接运行了。php.ini在/etc/目录下,原文件为:php.ini.default,所以将它发为php.ini,就可以配置php了

使用命令:

  • cp /etc/php.ini.default /etc/php.ini

MYSQL

MAC默认没有安装MYSQL,所以要自己安装,直接去MYSQL官网下载一个dmp包,双击打开,安装里面的三个文件:

  1. mysql安装文件,我下的是mysql-5.5.22-osx10.6-x86_64.pkg
  2. 运行:MySQLStartupItem.pkg。会为你设置开机启动mysql
  3. 运行:MySQL.prefPane。会在你的系统偏好设置里加入mysql图标,方便管理

这样mysql就安装好了。

接着就要设置php和mysql的连接啦,这个和其它系统设置没有什么区别

  1. 打开php.ini。命令:vi /etc/php.ini
  2. 找到mysql的dll,将前面的#号去掉
  3. 保存,启起apache

PS:php.ini是只读文件,所以要先修改权限,用root权限执行:chomd 777 /etc/php.ini。apache重启命令:apachectl restart。也是要root权限。

这样php和mysql就连接起来了,但是,用PHP程序连接mysql的时候,很可能同样不能连接,报告:? ? ? ? ?#2002 – 服务器没有响应 (or the local MySQL server’s socket is not correctly configured)解决 ,这个问题有的人说是mysql.sock的位置问题,因为MAC里mysql.sock在tmp下,所以修改php.ini,将mysql.sock的位置指向tmp下,但我试了一下,没用。后来找到了解决办法,mysql的连接HOST,不要用localhost,用127.0.0.1就可以了。例如在phpmyadmin里,将$cfg['Servers'][$i]['host'] = ‘localhost’中的localhost改为127.0.0.1就行了。

Rewrite

MAC Os X 最新的版本,默认情况下rewrite模块是打开的,所以不用去开了,可以直接配置apache的httpd.conf,非常简单:

  1. 打开httpd.conf:vi /etc/apache2/httpd.conf
  2. 找到你WEB目录的那个Directory,比如我是用的默认目录,那就要找到这一个<Directory “/library/WebServer/Documents/”>
  3. 在它下面找到AllowOverride none,将none改成All
  4. 重启apache,将你的.htaccess文件放到你的WEB目录里

好了,rewrite成功了

版权声明:本文为博主原创文章,未经博主允许不得转载。

来源:http://blog.csdn.net/onlyfu/article/details/7495634

推荐: