# MAC本地环境配置
## [](https://note.youdao.com/md/preview.html?file=%2Fyws%2Fapi%2Fgroup%2F9556624%2Ffile%2F132292741%3Fmethod%3Dread%26WLP%3Dtrue#1-%E5%87%86%E5%A4%87%E5%B7%A5%E4%BD%9C)1\. 准备工作
##### [](https://note.youdao.com/md/preview.html?file=%2Fyws%2Fapi%2Fgroup%2F9556624%2Ffile%2F132292741%3Fmethod%3Dread%26WLP%3Dtrue#xcode%E5%AE%89%E8%A3%85)XCODE安装
`xcode-select --install`
#### [](https://note.youdao.com/md/preview.html?file=%2Fyws%2Fapi%2Fgroup%2F9556624%2Ffile%2F132292741%3Fmethod%3Dread%26WLP%3Dtrue#%E5%AE%89%E8%A3%85homebrew)安装Homebrew
`ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"`
如果有问题,请执行
`brew doctor`
或者升级brew
`brew update && brew upgrade`
## [](https://note.youdao.com/md/preview.html?file=%2Fyws%2Fapi%2Fgroup%2F9556624%2Ffile%2F132292741%3Fmethod%3Dread%26WLP%3Dtrue#2%E5%AE%89%E8%A3%85php-fpm)2.安装PHP-FPM
###### [](https://note.youdao.com/md/preview.html?file=%2Fyws%2Fapi%2Fgroup%2F9556624%2Ffile%2F132292741%3Fmethod%3Dread%26WLP%3Dtrue#1%E9%9C%80%E8%A6%81%E5%85%88%E5%AE%89%E8%A3%85%E4%BE%9D%E8%B5%96%E5%8C%85)1).需要先安装依赖包
`brew tap homebrew/dupes`
`brew tap homebrew/php`
###### [](https://note.youdao.com/md/preview.html?file=%2Fyws%2Fapi%2Fgroup%2F9556624%2Ffile%2F132292741%3Fmethod%3Dread%26WLP%3Dtrue#2%E5%AE%89%E8%A3%85php-fpm-2)2).安装PHP-FPM
可以选择自己需要的扩展和版本
`brew install --without-apache --with-fpm --with-mysql --with-mongodb --with-redis php56`
也可以先安装php-fpm之后再添加扩展,homebrew会自动编译
###### [](https://note.youdao.com/md/preview.html?file=%2Fyws%2Fapi%2Fgroup%2F9556624%2Ffile%2F132292741%3Fmethod%3Dread%26WLP%3Dtrue#%E6%9B%B4%E6%96%B0%E7%B3%BB%E7%BB%9F%E7%9A%84%E7%8E%AF%E5%A2%83%E5%8F%98%E9%87%8F%E4%BB%A5bash%E4%B8%BA%E4%BE%8B)更新系统的环境变量,以bash为例
`echo 'export PATH="/usr/local/sbin:$PATH"' >> ~/.bash_profile && . ~/.bash_profile`
###### [](https://note.youdao.com/md/preview.html?file=%2Fyws%2Fapi%2Fgroup%2F9556624%2Ffile%2F132292741%3Fmethod%3Dread%26WLP%3Dtrue#%E5%A6%82%E6%9E%9C%E4%BD%A0%E4%BD%BF%E7%94%A8zsh)如果你使用zsh:
`echo 'export PATH="/usr/local/sbin:$PATH"' >> ~/.zshrc && . ~/.zshrc`
#### [](https://note.youdao.com/md/preview.html?file=%2Fyws%2Fapi%2Fgroup%2F9556624%2Ffile%2F132292741%3Fmethod%3Dread%26WLP%3Dtrue#3%E8%AE%BE%E7%BD%AEphp-fpm%E4%B8%BA%E5%BC%80%E6%9C%BA%E5%90%AF%E5%8A%A8)3).设置PHP-FPM为开机启动
`mkdir -p ~/Library/LaunchAgents`
`ln -sfv /usr/local/opt/php56/homebrew.mxcl.php56.plist ~/Library/LaunchAgents/`
然后尝试下启动 PHP-FPM
`launchctl load -w ~/Library/LaunchAgents/homebrew.mxcl.php56.plist`
检查下PHP-FPM 运行情况
`lsof -Pni4 | grep LISTEN | grep php`
会出现以下信息
~~~
php-fpm 69659 frdmn 6u IPv4 0x8d8ebe505a1ae01 0t0 TCP 127.0.0.1:9000 (LISTEN)
php-fpm 69660 frdmn 0u IPv4 0x8d8ebe505a1ae01 0t0 TCP 127.0.0.1:9000 (LISTEN)
php-fpm 69661 frdmn 0u IPv4 0x8d8ebe505a1ae01 0t0 TCP 127.0.0.1:9000 (LISTEN)
php-fpm 69662 frdmn 0u IPv4 0x8d8ebe505a1ae01 0t0 TCP 127.0.0.1:9000 (LISTEN)
~~~
> ### [](https://note.youdao.com/md/preview.html?file=%2Fyws%2Fapi%2Fgroup%2F9556624%2Ffile%2F132292741%3Fmethod%3Dread%26WLP%3Dtrue#%E4%BB%A5%E4%B8%8B%E6%98%AF%E5%8F%AF%E8%83%BD%E9%81%87%E5%88%B0%E7%9A%84%E9%97%AE%E9%A2%98)以下是可能遇到的问题
1.brew安装php扩展后,会保存在PHP目录下的conf.d文件中,你需要重启php-fpm才能使之生效
`php-fpm -D`
但可能会出现权限不够的问题,需要加上`sudo`,也可能出现端口被占用的情况,需要先`kill`掉这进程
## [](https://note.youdao.com/md/preview.html?file=%2Fyws%2Fapi%2Fgroup%2F9556624%2Ffile%2F132292741%3Fmethod%3Dread%26WLP%3Dtrue#3%E5%AE%89%E8%A3%85nginx)3.安装nginx
`brew install nginx`
#### [](https://note.youdao.com/md/preview.html?file=%2Fyws%2Fapi%2Fgroup%2F9556624%2Ffile%2F132292741%3Fmethod%3Dread%26WLP%3Dtrue#1%E8%AE%BE%E7%BD%AE%E8%87%AA%E5%8A%A8%E5%90%AF%E5%8A%A8)1.设置自动启动
~~~
sudo cp -v /usr/local/opt/nginx/*.plist /Library/LaunchDaemons/
sudo chown root:wheel /Library/LaunchDaemons/homebrew.mxcl.nginx.plist
~~~
此时默认的端口为8080,你需要在nginx.conf中将端口改为80
#### [](https://note.youdao.com/md/preview.html?file=%2Fyws%2Fapi%2Fgroup%2F9556624%2Ffile%2F132292741%3Fmethod%3Dread%26WLP%3Dtrue#2%E4%BF%AE%E6%94%B9nginxconf%E4%BD%BFnginx%E8%83%BD%E5%A4%9F%E8%A7%A3%E6%9E%90php)2.修改nginx.conf使nginx能够解析PHP
~~~
location ~ [^/]\.php(/|$)
{
try_files $uri =404;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
include fastcgi.conf;
include pathinfo.conf;
}
~~~
#### [](https://note.youdao.com/md/preview.html?file=%2Fyws%2Fapi%2Fgroup%2F9556624%2Ffile%2F132292741%3Fmethod%3Dread%26WLP%3Dtrue#3%E5%A2%9E%E5%8A%A0%E8%B7%A8%E5%9F%9F%E6%94%AF%E6%8C%81%E6%88%91%E4%BB%AC%E5%9C%A8%E8%B0%83%E7%94%A8%E5%9B%BE%E6%A0%87%E5%AD%97%E4%BD%93%E5%BA%93%E6%97%B6%E4%BC%9A%E7%94%A8%E5%88%B0)3.增加跨域支持,我们在调用图标字体库时会用到
~~~
add_header Access-Control-Allow-Origin *;
add_header Access-Control-Allow-Headers X-Requested-With;
add_header Access-Control-Allow-Methods GET,POST,OPTIONS;
~~~
## [](https://note.youdao.com/md/preview.html?file=%2Fyws%2Fapi%2Fgroup%2F9556624%2Ffile%2F132292741%3Fmethod%3Dread%26WLP%3Dtrue#4%E5%8F%82%E8%80%83%E7%BD%91%E7%AB%99)4.参考网站
[https://blog.frd.mn/install-nginx-php-fpm-mysql-and-phpmyadmin-on-os-x-mavericks-using-homebrew/](http://xn--vuq861bdnx31p/)
> ### [](https://note.youdao.com/md/preview.html?file=%2Fyws%2Fapi%2Fgroup%2F9556624%2Ffile%2F132292741%3Fmethod%3Dread%26WLP%3Dtrue#rewrite%E9%97%AE%E9%A2%98%E8%AF%B7%E6%A0%B9%E6%8D%AE%E9%9C%80%E8%A6%81%E9%85%8D%E7%BD%AE%E7%9A%84%E7%BD%91%E7%AB%99%E8%87%AA%E8%A1%8C%E5%A4%84%E7%90%86)rewrite问题请根据需要配置的网站自行处理
- 首页
- pm2
- pm2
- pm2 离线安装
- pm2 使用指南
- node
- 正则
- web
- webpack
- 配置
- 优化代码体积
- plugin-proposal-decorators
- webpack 打包原理解析
- babel presets配置 babel7
- 配置路径别名
- 去除开发中的警告信息
- css
- 滚动条
- input自动填充背景色
- 颜色渐变
- scss
- 网页定制光标
- 超出文本显示省略号。。。
- calc兼容性写法
- box-sizing
- clip-path
- 苹果手机页面滑动卡顿
- 字体间距根据父级宽度自适应
- 纯css动态效果
- 清除浮动的三种方法
- 按钮增加闪烁效果
- 字体渐变
- react
- mobx
- 路由
- antd 表格在safari上卡顿
- 项目初始化
- react-antd-mobx-momnet
- 显示字符串中的标签
- antd Select 在搜索精准度
- 路由切换动态过渡效果
- css中图片打包后的路径出错
- antd upload 无法及时更新state
- antd DatePicker设置中文失败
- antd-pro 添加登录页面报错
- new Array创建新数组数据指向相同
- react 页面刷新渲染两次
- useEffect
- Hooks 闭包解决方案
- hooks 方法封装
- Plugin "react" was conflicted between "package.json » eslint-config-react-app
- javascript
- canvas
- 多张图片合成一张
- 排序
- js比较符号==、===
- 运动函数封装(简易、通用)
- 导出表格(excel )
- react使用demo
- xlsx导出excel
- js获取屏幕高度宽度
- toFixed 函数修改
- 获取cookie,url参数
- 奇怪的错误问题
- copy(深拷贝 浅拷贝)
- 导出pdf
- 解决图片失真
- 判断字符串长度(带中文)
- js中 文件、图片二进制和base64的互转
- 读取深度嵌套的json数据
- 手动实现Promise.all
- cookie 删除
- webpack 打包过后的文件报错 regeneratorRuntime is not defined
- 防抖与节流
- react hooks 中使用防抖节流
- 图片懒加载
- 重排和重绘
- 修复部分无法JASON.parse的数据
- react-native
- android-studio 打开调试工具
- 适配全面屏
- node
- 服务端 node + nginx 反向代理
- 生成文件夹目录列表
- mogodb常用操作
- 发布npm包
- cli工具
- 上传文件
- nodejs使用crypto进行加密/解密操作
- mongodb 加入验证之后连接失败
- nextjs使用问题
- node转发http请求
- mongodb 导入导出 备份
- node-sass 安装问题、安装失败等
- npm yarn 安装依赖太慢
- puppeteer 安装问题 centos
- mongoose
- 其他
- 禁止浏览器缓存
- chrome平滑滚动
- pdf预览
- 问题整理
- 资料
- 小程序
- fetch
- cookie 设置跨域资源共享
- taro 小程序
- taro request
- 设置npm镜像
- esbuild the service is no longer running
- 离线地图
- uniapp 转 vue-cli
- 工具
- Excel表格密码保护的解除方法
- vscode(插件)
- vscode 常用代码片段
- vscode 开启tab补全代码
- mac 百度网盘破解
- mysql 重置密码
- chrome 好用的扩展
- Mac/Linux/Windows通过命令调用浏览器打开某网页
- 小链接
- 数据库
- mongo
- sql文件导入
- join 用法
- sql 时间格式化 DATE_FORMAT
- 创建全文检索并分词查询
- 阿里云node-mysql 操作文档
- sql 时间查询
- mysql group查询结果合并为一行
- mysql 锁
- mysql count 同个字段多个结果合并到一行
- 解决Node.js mysql客户端不支持认证协议引发的“ER_NOT_SUPPORTED_AUTH_MODE”问题
- mysql 根据经纬度计算距离
- PHP
- 文件读取
- 接收前端json数据
- 自定义排序
- session 写入失败无法保存
- php 上传大文件$_FILES为空
- base64转图片
- composer.phar 安装东西太慢 切换国内镜像
- laravel sql查询记录
- 解决: Please provide a valid cache path.
- thinkphp开启多应用
- 上传文件报错 Filename cannot be empty
- php curl 报错 curl: (35) SSL connect error
- App
- android未授权错误(Flutter)
- uniapp
- 服务端
- mongodb 定时备份
- mysql 错误
- nginx 转发网络请求
- midwayjs 使用egg-mysql
- https 无法访问
- egg 配置跨域
- 算法实现
- 排序
- 全排列
- 无重复字符的最长子串
- 反转单向链表
- 斐波那契数列
- 有效的括号
- GIT
- git克隆大文件
- 面试整理
- 前端整理
- 大厂高级前端面试题
- 三年大厂面试题
- 面试经验
- 头条it技术工程师
- 每日学习
- 常见的数据结构
- 面试地址汇总
- 练习汇总
- 前端八股文
- mac环境配置
- mac nginx重启报错
- mac 安装redis
- fis配置
- 切换php版本
- Mac OS X下的Oh-My-ZSH安装与配置
- mac 查看端口进程 停止进程
- mac 配置ssh 免密码登录服务器
- navigate 中文破解
- 删除启动台无效文件夹
- 删除顶部图标(卸载后的软件还存在)
- 修复mac 下安装全局依赖失效
- navicate 完美破解 内有下载地址
- nginx 报错 500 "/usr/local/var/run/nginx/client_body_temp/0000000004" failed (13: Permission denied)
- 安装PHP redis扩展
- 安装zsh后 nvm node命令失效
- python
- python 在vscode中编辑,格式化文件总是提示There is no Pip installer available in the selected environment.
- 杂项
- 膝盖修复
- 微信打开网页链接反应巨慢
- chrome 显示http/https完整连接
- doracms
- pdfjs 中文无法显示
- docker
- go
- 指针、指针地址* &
- 脚本
- 京东疯狂的joy脚本
- 2021京东炸年兽
- LINUX
