Mac下搭建PHP开发环境(Apache+PHP+MySQL+p
2016-09-29 本文已影响1859人
汗青fullstack
备注:OS 10.11 自带Apache 2.4.18和PHP 5.5;(升级macOS Sierra后Apache 2.4.23和PHP 5.6.24)
1. 运行Apache(根目录:/Library/WebServer/Document)
- 终端输入以下命令回车,然后输入密码,即可开启Apache
sudo apachectl start
(开启后,可以通过浏览器访问:http://localhost
,页面显示“It works” 表示已经成功。) - 关闭Apache
sudo apachectl stop - 重启Apache
sudo apachectl restart - 查看Apache版本
sudo apachectl -v
Server version: Apache/2.4.18 (Unix) Server built: Feb 20 2016 20:03:19
2. 配置PHP
- 编辑Apache配置文件,终端输入:
sudo vi /etc/apache2/httpd.conf
找到#LoadModule php5_module libexec/apache2/libphp5.so
,去掉#
,键盘点击esc
,然后写入并退出:wq
- 复制一份
php.ini.default
命名php.ini
,以后就可以配置PHP了
终端输入sudo cp /etc/php.ini.default /etc/php.ini
- 重启Apache,是其生效
终端输入sudo apachectl restart
3. 安装配置MySQL
- 下载免费社区版mysql-5.7.15-osx10.11-x86_64.dmg,下载后双击安装,成功之后,会弹出提示框:
2016-09-28T13:54:19.317005Z 1 [Note] A temporary password is generated for root@localhost: SejX&!WY+518 If you lose this password, please consult the section How to Reset the Root Password in the MySQL reference manual.
记住这里的临时密码:SejX&!WY+518
- 打开系统偏好配置->MySQL,开启MySQL:
Start MySQL Server
(或者 关闭MySQL:Stop MySQL Server
),注意:Automatically Start MySQL Server On Startup
是默认勾选的,勾选后打开电脑会默认开启MySQL - PHP连接MYSQL默认去找
/var/mysql/mysql.sock
,但MAC版的MYSQL改动了文件位置,放在/tmp
下了。处理办法是修改php.ini
,终端输入sudo vi /etc/php.ini
,修改:
mysql.default_socket = /tmp/mysql.sock
pdo_mysql.default_socket=/tmp/mysql.sock
mysqli.default_socket=/tmp/mysql.sock
建议以上三个都改下,我默认使用的mysqli的方式请求MySQL
4.下载配置phpMyAdmin(管理MySQL的工具)
-
下载phpMyAdmin 点击进入页面,点击右侧Download 4.6.4
-
去“下载”找到
phpMyAdmin-4.6.4-all-languages
文件夹,更改文件夹为phpMyAdmin
,放在/Library/WebServer/Document/
目录下(Apache的根目录)
打开该目录可以终端输入open /Library/WebServer/Document
-
复制phpMyAdimin下
config.sample.inc.php
于当前目录,
命名config.inc.php
-
修改
config.inc.php
-
$cfg['blowfish_secret'] = 'asdf1234asdf1234asdf1234asdf1234asdf1234'; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */
-
错误$cfg['Servers'][$i]['host'] = 'localhost’
;
改为:$cfg['Servers'][$i]['host'] = '127.0.0.1';
否则:
-
重设root密码:http://www.jianshu.com/p/03c3417e998c
密码过期
密码错误
-
-
登录phpMyAdmin,浏览器输入
http://localhost/phpMyAdmin
登录root
密码xxxx
尼玛终于可以使用了!爽!
问题 1:
- PHP连接MySQL会报错
Warning: mysqli::real_connect(): (HY000/2002): No such file or directory ...
错误信息
原因:连接时PHP默认去找/var/mysql/mysql.sock
了,但MAC版的MYSQL改动了文件位置,放在/tmp
下了。处理办法是修改php.ini
,终端输入sudo vi /etc/php.ini
,修改:
mysql.default_socket = /tmp/mysql.sock
pdo_mysql.default_socket=/tmp/mysql.sock
mysqli.default_socket=/tmp/mysql.sock
建议以上三个都改下,我默认使用的mysqli的方式请求MySQL,亲测可用