基于Mac自带nginx、php,配置php服务器
Mac( MacOS 10.14.0 )
自带的nginx (1.12.0)
和php (PHP 7.1.23)
,主要有以下几个方面:
- php-fpm 配置
- nginx 配置
- php-fpm/nginx 进程管理
Mac自带nginx文件路径信息
/usr/local/bin/nginx // 符号链接路径
/usr/local/var/www // 默认服务器根目录
/usr/local/etc/nginx // nginx配置目录,nginx配置相关的文件都在这个目录// 启动nginx
nginx
// or: /usr/local/bin/nginx复制代码
/etc/php-fpm.conf.default // php-fpm默认配置文件
/etc/php-fpm.d/www.conf.default // 进程扩展配置文件
/usr/sbin/php-fpm // 符号链接路径复制代码
♢ 启动nginx服务器
nginx --version (or -v)
查看nginx的版本信息
启动nginx服务器(可以直接在控制台输入nginx,回车)
nginx
复制代码
♢ 配置php-fpm
php-fpm -v (或 --version)
查看版本信息
/private/etc/
目录有php-fpm.conf.default
文件,但php-fpm
启动时默认找的是php-fpm.conf
所以先从php-fpm.conf.default copy
一份 php-fpm.conf
cd /private/etc
cp php-fpm.conf.default php-fpm.conf复制代码
error_log = log/php-fpm.log
这一行,在下面加一行error_log = /usr/local/var/log/php-fpm.log
,以指定错误日志文件,防止报错
cd php-fpm.d
cp www.conf.default www.conf // 同样copy一份 www.conf复制代码
php-fpm
// or
php-fpm -D复制代码
ps -ef | grep php-fpm
查看是否 php-fpm的相关进程
也可以为php-fpm 指定配置文件启动
php-fpm –c php.ini –y php-fpm.conf复制代码
ps -ef | grep php-fpm
找到运行中的php-fpm进程的PID,然后通过kill -s signal PID
的方式进行管理. 相关signal有:
信号
|
作用
|
INT
|
立即终止
|
QUIT
|
平滑终止
|
USR1
|
重新打开日志文件
|
USR2
|
重启(平滑重载所有worker进程并重新载入配置和二进制模块)
|
♢ 配置nginx
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;}复制代码
root html
指向nginx 服务器默认根目录 /usr/local/var/www
,在这里创建一个index.php 并写入一行php代码,以验证服务可用性
cd /usr/local/var/www
echo "<?php echo 11;" > index.php复制代码
nginx -s reload复制代码
ps -ef | grep nginx
查看是否有相关进程,以验证nginx是否启动成功。在浏览器输入: 127.0.0.1:8080/index.php
♢ nginx进程管理
nginx -s stop // fast shutdown
nginx -s quit // graceful shutdown
nginx -s reload // reloading the configuration file
nginx -s reopen // 重新打开日志文件复制代码
mater process (master 进程)
和worker process(worker进程)
,master(主)进程负责worker(工作)进程的管理,而worker 进程则负责处理请求, 还有可能有cache相关进程。
- 单进程模式:nginx只会有一个进程,该进程即充当master进程角色,又充当worker进程角色
- 多进程模式:nginx会有一个master进程(也只有一个),且至少有一个worker进程
ps -ef | grep nginx (或通过 ps -ax | grep nginx)
来找到nginx的worker进程process ID
ps -ef | grep nginx
501 83158 1 0 4:44PM ?? 0:00.01 nginx: master process nginx
501 85683 83158 0 5:58PM ?? 0:00.00 nginx: worker process复制代码
然后,kill -s QUIT 85683 通过quit信号的形式结束PID 为85683 的worker进程。 nginx mater 进程信号及作用列表:
信号
|
作用
|
INT,TERM
|
立即终止
|
QUIT
|
平滑终止
|
HUP
|
changing configuration, keeping up with a changed time zone (only for FreeBSD and Linux), starting new worker processes with a new configuration, graceful shutdown of old worker processes
|
USR1
|
重新打开日志文件
|
USR2
|
upgrading an executable file
|
WINCH
|
graceful shutdown of worker processes
|
转载于:https://juejin.im/post/5cf33ff16fb9a07f091b8b4a
基于Mac自带nginx、php,配置php服务器相关推荐
- linux构建基于mac的vlan,通过CLI配置交换机的基于MAC的VLAN组
通过CLI配置交换机的基于MAC的VLAN组 Introduction 虚拟局域网逻辑上允许您对网段A区域网(LAN)到不同的广播域.在敏感数据可能是在网络的广播的方案中, VLAN可以通过选定广播创 ...
- 基于WINDOS系统自带工具IIS配置文件下载服务器
IIS配置文件下载服务器 IIS功能已经打开 1.新建一个网站: 2.设置网站名称.位置.IP 3.需要修改的地方 3.1HTTP标头 添加名称:Content-Disposition:值:attac ...
- mac apache 和 nginx ssl 配置自签名的SSL
2019独角兽企业重金招聘Python工程师标准>>> mac apache ssl 配置 a-生成私钥,命令: sudo openssl genrsa -des3 -out app ...
- mac os 配置 mysql_基于MAC OS 操作系统安装、配置mysql
首先先介绍压缩包形式的安装方法: $ sudo mv mysql-5.1.45-osx10.6-x86_64 /usr/local/mysql $ cd /usr/local $ sudo chown ...
- Mac OS X上安装配置apache服务器
说明:Mac在安装完成Mac系统的时候它已经自带了apache服务器,接下来就是配置和将它启动运行了.那么接下来要做的事情就是: 1.配置apache的配置文件2.设置虚拟主机 启动并查看apache ...
- mac os 开启redis_Mac下配置Redis服务器(自启动、后台运行) | 学步园
Redis服务器在从诸多文章上看来,是个极为优秀的Key-value数据库软件.其NB之处可以从这篇文章中略知一二. 主要参考 首先是安装,它会默认安装到/usr/local/bin下 cd /tmp ...
- Nginx之配置后端服务器组
Nginx服务器支持设置一组服务器作为后端服务器,Nginx反向代理,负载均衡等重要功能会经常涉及后端服务器. 服务器组的设置包括以下的一些指令,他们是由标准的HTTP模块ngx_http_upstr ...
- Nginx+Ftp配置图片服务器,实现网址直接访问图片
一.Nginx 教程:https://blog.csdn.net/zyw_java/article/details/77114671 这个教程要注意,里面的路径有点问题,详情见第三部分 效果:在ip: ...
- 基于MAC地址的安全配置与管理
MAC地址是网络设备中不变的物理地址,所以基于MAC地址的接入控制就成了最直接,甚至可能是大多数情况下最有效的控制手段.在二层交换网络中,是通过依靠保存在交换机中的MAC地址表来进行寻址的,这时如果控 ...
最新文章
- OpenCV3.3中K-Means聚类接口简介及使用
- linux fuser 命令 查看文件/网络端口 被什么进程占用
- Java未被捕获的异常
- Python进阶(上下文管理器与with语句)
- django 模板两次for循环_Django模板之基本的 for 循环 和 List内容的显示方式
- java 实现超时_如何实现带有超时的Runnable? - java
- JSON 序列化 与 反序列化
- linux 驱动编译静态,Linux驱动静态编译和动态编译方法详解
- numpy : numpy.random
- comsol初学经验分享
- 数据库查询结果随机排序
- 软件定义无线电 (SDR) 和业余试验
- hydra 破解ssh 163邮箱
- SSL连接是什么意思
- html+css基础教程之html标题学习
- 【商业模式学习感悟】趣步App——新型商业模式,还是新型传销?
- 关于重定向和转发的理解
- FreeSWITCH权威指南-基础篇-1.2-电话实现技术
- Spring Cloud自定义Hystrix请求命令 1
- python 模拟触屏电脑操作_如何在硒中模拟触摸屏?
热门文章
- PhpStorm设置
- Three.js中自定义控制几何体的点和面的属性
- Android中集成Jpush实现推送消息通知与根据别名指定推送附示例代码下载
- Android中使用画笔和画布绘制一个矩形
- 集成学习(ensemble learning)(一)
- 绝地求闪退be服务器未运行,绝地求生大逃杀BE启动失败,应用程序无法正常启动...
- es ik分词热更新MySQL,ElasticSearch(25)- 改IK分词器源码来基于mysql热更新词库
- 国内电商场景大战中,企业如何寻找有效增长点?这里有答案了
- MySQL高可用的几种方案
- Debug实验学习汇编