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概述.
Oct 09 PHP
通达OA公共代码 php常用检测函数
Dec 14 PHP
PHP中去掉字符串首尾空格的方法
May 19 PHP
基于php权限分配的实现代码
Apr 28 PHP
PHP中的类型约束介绍
May 11 PHP
php实现有趣的人品测试程序实例
Jun 08 PHP
php for 循环使用的简单实例
Jun 02 PHP
Yii统计不同类型邮箱数量的方法
Oct 18 PHP
thinkphp3.2.0 setInc方法 源码全面解析
Jan 29 PHP
PHP排序算法之堆排序(Heap Sort)实例详解
Apr 21 PHP
PHP-FPM 设置多pool及配置文件重写操作示例
Oct 02 PHP
Thinkphp 框架配置操作之动态配置、扩展配置及批量配置实例分析
May 15 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
图书管理程序(二)
2006/10/09 PHP
php动态生成JavaScript代码
2009/03/09 PHP
php简单浏览目录内容的实现代码
2013/06/07 PHP
ThinkPHP缓存方法S()概述
2014/06/13 PHP
dvwa+xampp搭建显示乱码的问题及解决方案
2015/08/23 PHP
PHP文件系统管理(实例讲解)
2017/09/19 PHP
javascript引用对象的方法代码
2007/08/13 Javascript
一个符号插入器 中用到的js代码
2007/09/04 Javascript
超棒的javascript页面顶部卷动广告效果
2007/12/01 Javascript
javascript 进阶篇2 CSS XML学习
2012/03/14 Javascript
jquery垂直公告滚动实现代码
2013/12/08 Javascript
ExtJs纵坐标值重复问题的解决方法
2014/02/27 Javascript
js实现鼠标悬浮给图片加边框的方法
2015/01/30 Javascript
jQuery 获取页面li数组并删除不在数组中的key
2016/08/02 Javascript
vue2中filter()的实现代码
2017/07/09 Javascript
JavaScript正则表达式的贪婪匹配和非贪婪匹配
2017/09/05 Javascript
微信小程序显示倒计时功能示例【测试可用】
2018/12/03 Javascript
jQuery中DOM常见操作实例小结
2019/08/01 jQuery
layui table 多行删除(id获取)的方法
2019/09/12 Javascript
Python打包可执行文件的方法详解
2016/09/19 Python
浅谈Python3识别判断图片主要颜色并和颜色库进行对比的方法
2019/10/25 Python
matplotlib基础绘图命令之bar的使用方法
2020/08/13 Python
python 服务器运行代码报错ModuleNotFoundError的解决办法
2020/09/16 Python
Python+MySQL随机试卷及答案生成程序的示例代码
2021/02/01 Python
HTML5移动端手机网站开发流程
2016/04/25 HTML / CSS
营销与策划个人求职信
2013/09/22 职场文书
自主招生自荐信范文
2013/12/04 职场文书
旷课检讨书3000字
2014/02/04 职场文书
高中英语演讲稿范文
2014/04/24 职场文书
高中生操行评语
2014/04/25 职场文书
质量主管工作职责
2014/09/26 职场文书
2014年建筑工作总结
2014/11/26 职场文书
公司业务员管理制度
2015/08/05 职场文书
我爱我班主题班会
2015/08/13 职场文书
《比尾巴》教学反思
2016/02/24 职场文书
python编程实现清理微信重复缓存文件
2021/11/01 Python