Mac M1安装mnmp (Mac+Nginx+MySQL+PHP) 开发环境


Posted in PHP onMarch 29, 2021

之前刚装好了 HomeBrew ,接下来就要安装 环境了。

注意:如果 brew install 出以下错误, 则安装时使用 arch -arm64 brew install 软件包名 进行安装

Mac M1安装mnmp (Mac+Nginx+MySQL+PHP) 开发环境

安装 Nginx 

brew install nginx

Mac M1安装mnmp (Mac+Nginx+MySQL+PHP) 开发环境

安装成功后,通过 brew info nginx ,查看 nginx 信息,最主要是看 网站根目录与配置文件目录。(默认为 8080 端口)

 php-fpm 解析 php

# 终端
vim /opt/homebrew/etc/nginx/nginx.conf
  
# 在文件内 http{} 中新增
location ~ \.php$ {
 root   html;
 fastcgi_pass 127.0.0.1:9000;
 fastcgi_index index.php;
 fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
 include  fastcgi_params;
}
  
# 终端, 重启 nginx
nginx -s reload
# nginx 常用命令
  
sudo nginx # 启动
sudo -s reload # 重新加载配置
sudo -s reopen # 重启
sudo -s stop # 停止
sudo -s quit # 退出

安装 MySQL

首先搜索是否包含想要安装的 mysql 版本, 这里以 mysql@5.7 为例

Mac M1安装mnmp (Mac+Nginx+MySQL+PHP) 开发环境

安装成功

Mac M1安装mnmp (Mac+Nginx+MySQL+PHP) 开发环境

 添加 MySQL 环境变量

# 终端
echo 'export PATH="/opt/homebrew/opt/mysql@5.7/bin:$PATH"' >> ~/.zshrc
  
# 刷新 ~/.zshrc
source ~/.zshrc

查看当前版本

mysql --version

安装PHP 

首先搜索是否包含想要安装的 php 版本, 这里以 php5.6 为例

brew search php

执行 brew search php 后发现没有 php5.6, 解决方法就是 tap 一下。

Mac M1安装mnmp (Mac+Nginx+MySQL+PHP) 开发环境

tap一下

brew tap shivammathur/php

解压至 /opt/homebrew/Library/Taps/shivammathur/homebrew-php (不存在则需要手动创建目)如果 tap 超时, 则用浏览器打开 https://github.com/shivammathur/homebrew-php , 下载压缩包

完成后就可能找到 php5.6 版本了

Mac M1安装mnmp (Mac+Nginx+MySQL+PHP) 开发环境

安装php5.6,耐心等待安装完成

brew install shivammathur/php/php@5.6

 添加PHP环境变量

# 终端
vim ~/.zshrc
  
# 新增
export PATH="/opt/homebrew/opt/php@5.6/bin:$PATH"
export PATH="/opt/homebrew/opt/php@5.6/sbin:$PATH"
  
# 终端 刷新 ~/.zshrc
source ~/.zshrc

安装 brew-php-swither PHP版本切换工具

brew install brew-php-switcher

切换版本

# brew-php-switcher 版本号
brew-php-switcher 5.6

查看当前版本

php -v

 

PHP 相关文章推荐
php intval的测试代码发现问题
Jul 27 PHP
php截取后台登陆密码的代码
May 05 PHP
通过php快速统计某个数据库中每张表的数据量
Sep 04 PHP
PHP中通过HTTP_USER_AGENT判断是否为手机移动终端的函数代码
Feb 14 PHP
php操作mysqli(示例代码)
Oct 28 PHP
PHP中使用CURL模拟登录并获取数据实例
Jul 01 PHP
利用PHP将图片转换成base64编码的实现方法
Sep 13 PHP
php中遍历二维数组并以表格的形式输出的方法
Jan 03 PHP
ThinkPHP实现分页功能
Apr 28 PHP
PHP实现对xml进行简单的增删改查(CRUD)操作示例
May 19 PHP
kindeditor 加入七牛云上传的实例讲解
Nov 12 PHP
PHP实现按之字形顺序打印二叉树的方法
Jan 16 PHP
Laravel中Kafka的使用详解
Mar 24 #PHP
thinkphp5 redis缓存新增方法实例讲解
php优化查询foreach代码实例讲解
Mar 24 #PHP
PHP引擎php.ini参数优化深入讲解
Mar 24 #PHP
PHP使用Redis队列执行定时任务实例讲解
Mar 24 #PHP
YII2 全局异常处理深入讲解
Laravel的加密解密与哈希实例讲解
Mar 24 #PHP
You might like
德劲1107的电路分析与打磨
2021/03/02 无线电
打造超酷的PHP数据饼图效果实现代码
2011/11/23 PHP
js数组去重的常用方法总结
2014/01/24 Javascript
JQuery教学之性能优化
2014/05/14 Javascript
javascript将数字转换整数金额大写的方法
2015/01/27 Javascript
延时加载JavaScript代码提高速度
2015/12/27 Javascript
DeviceOne 让你一见钟情的App快速开发平台
2016/02/17 Javascript
html+js+highcharts绘制圆饼图表的简单实例
2016/08/04 Javascript
ui-router中使用ocLazyLoad和resolve的具体方法
2017/10/18 Javascript
Webpack框架核心概念(知识点整理)
2017/12/22 Javascript
JS控制鼠标拒绝点击某一按钮的实例
2017/12/29 Javascript
继承行为在 ES5 与 ES6 中的区别详解
2019/12/24 Javascript
node.js中 redis 的安装和基本操作示例
2020/02/10 Javascript
[01:02:30]Mineski vs Secret 2019国际邀请赛淘汰赛 败者组 BO3 第三场 8.22
2019/09/05 DOTA
python计算书页码的统计数字问题实例
2014/09/26 Python
Python中使用HTMLParser解析html实例
2015/02/08 Python
python中Genarator函数用法分析
2015/04/08 Python
Python实现按学生年龄排序的实际问题详解
2017/08/29 Python
详解Python中的正则表达式
2018/07/08 Python
python画图系列之个性化显示x轴区段文字的实例
2018/12/13 Python
python 自动批量打开网页的示例
2019/02/21 Python
Django处理Ajax发送的Get请求代码详解
2019/07/29 Python
Python中list循环遍历删除数据的正确方法
2019/09/02 Python
Python post请求实现代码实例
2020/02/28 Python
python 6行代码制作月历生成器
2020/09/18 Python
Django中ORM的基本使用教程
2020/12/22 Python
美国高级工作服品牌:Carhartt
2018/01/25 全球购物
货代行业个人求职简历的自我评价
2013/10/22 职场文书
车间统计员岗位职责
2014/01/05 职场文书
带薪年假请假条
2014/02/04 职场文书
写得不错的求职信范文
2014/07/11 职场文书
入党介绍人意见范文
2015/06/01 职场文书
小学英语新课改心得体会
2016/01/22 职场文书
高质量“欢迎词”
2019/04/03 职场文书
CSS实现漂亮的时钟动画效果的实例代码
2021/03/30 HTML / CSS
游戏开发中如何使用CocosCreator进行音效处理
2021/04/14 Javascript