Mac系统下搭建Nginx+php-fpm实例讲解


Posted in PHP onDecember 15, 2020

分享背景

由于一直在虚拟机的状态下开发PHP,尝试一下mac本地搭建环境.mac本身是自带Apache+php的,在低版本的mac系统中,mac中的php版本是5.6的版本.
本文分享的是在mac的10.13版本.前提是本地安装了brew包管理工具,如果还没安装的可以参考官网文档安装,传送门.

安装步骤

1.停止本地的Apache服务

sudo apachectl stop

2.安装NGINX

brew install nginx

3.启动NGINX

// 查看帮助命令
nginx -v
// 重启命令
nginx -s reload

4.访问NGINX

打开浏览器,输入如下网址,正确的情况就可以看到如下的截图.http://localhost.com/

Mac系统下搭建Nginx+php-fpm实例讲解

5.NGINX项目目录介绍

通过上面的步骤,就表示NGINX已经完成了.这里有几个文件,我们需要关注一下.
1.nginx配置目录
/usr/local/etc/nginx
2.nginx的项目根目录
/usr/local/var/www

6.配置php(由于mac的高版本中已经内置了PHP7.1的版本,该文章也是基于这个基础上操作的.后续完善该文章,实现一个多版本的切换.)

1.去掉nginx.conf中如下代码中的注释(在去掉之前最好备份一份 cp nginx.conf nginx.conf.bak)
location ~ \.php$ {
 fastcgi_pass 127.0.0.1:9000;
 fastcgi_index index.php;
 fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
 include fastcgi_params;
}

该段代码的主要意思就是让nginx能够解析到php,不然你去访问php的文件,nginx会默认下载该php文件.在Apache中是以模块的方式加载的php,就是去掉LoadModule php_module libexec/apache2/libphp7.so

2.修改1中的部分配置

原配置中的值为/scripts$fastcgi_script_name, 需要修改为$document_root$fastcgi_script_name

该代码主要的意思就是让nginx能够识别到nginx配置文件中的root项.

不然会报not find file错误信息.

<font color='red'>重启nginx服务,nginx -s reload</font>

3.配置php-fpm文件

sudo cp /private/etc/php-fpm.conf.default /private/etc/php-fpm.conf

修改我们新复制的php-fpm.conf文件中的如下配置项目.修改为下面的示例

pid=/var/run/php-fpm.pid
error_log=/var/log/php-fpm.log

4.启动php-fpm服务

sudo php-fpm

启动服务的时候可能会遇到下面的问题,反正我是遇到了(下面的路径根据你图片指示的路径来定,可能有的环境路径不一致).解决办法是

Mac系统下搭建Nginx+php-fpm实例讲解

cp 
/data/server/php7/etc/php-fpm.d/www.conf.default 
/data/server/php7/etc/php-fpm.d/www.conf

然后在启动一次,即可.
5.编写测试文件,我们找到/usr/local/var/www目录,创建一个test.php的文件.写入如下代码.

phpinfo();

6.测试效果
打开浏览器,访问http://localhost/test.php,即可看到如下效果

Mac系统下搭建Nginx+php-fpm实例讲解

到此这篇关于Mac系统下搭建Nginx+php-fpm实例讲解的文章就介绍到这了,更多相关Mac系统下搭建Nginx+php-fpm内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

PHP 相关文章推荐
第十节 抽象方法和抽象类 [10]
Oct 09 PHP
php 将bmp图片转为jpg等其他任意格式的图片
Jun 21 PHP
PHP array 的加法操作代码
Jul 24 PHP
PHP日期处理函数 整型日期格式
Jan 12 PHP
php中session使用示例
Mar 29 PHP
PHP静态文件生成类实例
Nov 29 PHP
php单例模式示例分享
Feb 12 PHP
抛弃 PHP 代价太高
Apr 26 PHP
PHP实现的堆排序算法详解
Aug 17 PHP
PHP+ajax实现获取新闻数据简单示例
May 08 PHP
PHP abstract 抽象类定义与用法示例
May 29 PHP
Laravel获取所有的数据库表及结构的方法
Oct 10 PHP
php在linux环境中如何使用redis详解
Dec 15 #PHP
PHP文件操作简单介绍及函数汇总
Dec 11 #PHP
PHP SESSION跨页面传递失败解决方案
Dec 11 #PHP
PHP生成随机密码4种方法及性能对比
Dec 11 #PHP
通过代码实例解析PHP session工作原理
Dec 11 #PHP
深入解析PHP底层机制及相关原理
Dec 11 #PHP
基于PHP实现发微博动态代码实例
Dec 11 #PHP
You might like
PHP无限分类(树形类)的深入分析
2013/06/02 PHP
php输出1000以内质数(素数)示例
2014/02/16 PHP
PHP+jQuery 注册模块的改进(一):验证码存入SESSION
2014/10/14 PHP
Thinkphp多文件上传实现方法
2014/10/31 PHP
PHP文件读取功能的应用实例
2015/05/08 PHP
thinkPHP5.0框架独立配置与动态配置方法
2017/03/17 PHP
jquery简单实现鼠标经过导航条改变背景图
2013/12/17 Javascript
jquery实现鼠标滑过小图时显示大图的方法
2015/01/14 Javascript
JavaSciprt中处理字符串之sup()方法的使用教程
2015/06/08 Javascript
AngularJS中的表单简单入门
2016/07/28 Javascript
利用vue实现模态框组件
2016/12/19 Javascript
jQuery排序插件tableSorter使用方法
2017/02/10 Javascript
jQuery中layer分页器的使用
2017/03/13 Javascript
ES6中Array.copyWithin()函数的用法实例详解
2017/09/16 Javascript
小程序分页实践之编写可复用分页组件
2019/07/18 Javascript
浅谈bootstrap layer.open中end的使用方法
2019/09/12 Javascript
理解Python中函数的参数
2015/04/27 Python
Python Queue模块详细介绍及实例
2016/12/27 Python
python实现百度语音识别api
2018/04/10 Python
Python实现的维尼吉亚密码算法示例
2018/04/12 Python
pycharm安装和首次使用教程
2018/08/27 Python
浅谈python3.x pool.map()方法的实质
2019/01/16 Python
更新升级python和pip版本后不生效的问题解决
2020/04/17 Python
python爬虫使用scrapy注意事项
2020/11/23 Python
英国顶级家庭折扣店:The Works
2017/09/06 全球购物
波兰香水和化妆品购物网站:Notino.pl
2017/11/07 全球购物
Rosetta Stone官方网站:语言学习
2019/01/05 全球购物
美国地毯购买网站:Rugs USA
2019/02/23 全球购物
Lookfantastic俄罗斯:欧洲在线化妆品零售商
2019/08/06 全球购物
个人委托书
2014/07/31 职场文书
单位在职证明书
2014/09/11 职场文书
2016年师德先进个人事迹材料
2016/02/29 职场文书
【HBU】数据库第四周 单表查询
2021/04/05 SQL Server
Pytorch 实现变量类型转换
2021/05/17 Python
Java 多线程协作作业之信号同步
2022/05/11 Java/Android
vue如何在data中引入图片的正确路径
2022/06/05 Vue.js