Mac电脑、MacOS系统 下php、apache、mysql开发环境配置

2022-10-11 21:49:29 208 0
魁首哥

MacOS的终端与使用linux系统没什么区别,shell命令几乎完全通用,非常适合服务端开发。下面讲解一下MacOS 下php、 apache 、mysql开发环境配置,目录结构与linux系统下的差不多,有哪些坑需要注意的呢?

MacOS自带php与apache,把它开启就行了。

第一步: 打开终端,sudo su 入进root权限

第二步: mv /etc/php.ini.default /etc/php.ini,创建PHP的配件文件php.ini

第三步: vim /etc/apache2/httpd.conf,修改httpd.conf配置文件

修改监听的端口:

Listen 8080

Listen 80

默认网站目录 /Library/WebServer/Documents,需要的可以修改

去掉 LoadModule php7_module libexec/apache2/libphp7.so前面的#号注释,这里是加载解析php的作用,我的是PHP7

apache常用命令:

启动Apache服务 sudo apachectl start

重启Apache服务 sudo apachectl restart

停止Apache服务 sudo apachectl stop

查看Apache服务 sudo apachectl -v

第四步: vim /Library/WebServer/Documents/phpinfo.php, 创建测试文件

浏览访问:,看以下图片,恭喜你,php跑起来了

第五步: Mac没用自带mysql,只好去官网 下载

安装完成后, mysql –version查看版本,下面是我本机的:

mysql Ver 8.0.17 for macos10.14 on x86_64 (MySQL Community Server – GPL)

php -v 查看php版本:

PHP 7.1.16 (cli) (built: Mar 31 2018 02:59:59) ( NTS )

Copyright (c) 1997-2018 The PHP Group

Zend Engine v3.1.0, Copyright (c) 1998-2018 Zend Technologies

数据库目录:/usr/local/mysql/data

mysql 启动或者停止命令行:

sudo /usr/local/mysql/support-files/mysql.server start

sudo /usr/local/mysql/support-files/mysql.server restart

sudo /usr/local/mysql/support-files/mysql.server stop

也可以在系统偏好设置->MySQL中管理:

如果没有/etc/my.cnf 数据库配置文件,需要创建vim /etc/my.cnf,网上可以找到别人发出来的,复印粘贴进去保存

再关联Configuration File,点apply

mysql -uroot -p 登录

配置mysql_native_password身份验证插件的密码

CREATE USER ‘xiaozhu’@’localhost’ IDENTIFIED WITH mysql_native_password BY ‘123456’;

grant all privileges on *.* to ‘xiaozhu’@’localhost’;

flush privileges;

vi /etc/my.cnf

在[mysqld]中添加下边的代码default_authentication_plugin=mysql_native_password

sudo /usr/local/mysql/support-files/mysql.server restart 重启

第六步: 我的php7 只支持mysqli_connect访问 mysql数据库 ,并且mysql要配置mysql_native_password身份验证插件的密码,mysql8的原因

下载phpMyAdmin放置 /Library/WebServer/Documents目录,登录创建数据库test,建表user

创建测试代码:vim /Library/WebServer/Documents/mysql.php

访问,看到以下界面大功告成。

总结:主要的坑出在mysql8要配置mysql_native_password身份验证插件的密码,还有php7不支持mysql_connect,要用mysqli_connect。

收藏
分享
海报
0 条评论
208
上一篇:PHP之常用的RBAC权限管理详解 下一篇:使用 Swoole-Tracker 秒级定位 PHP 卡死问题,真香

本站已关闭游客评论,请登录或者注册后再评论吧~

忘记密码?

图形验证码