2018-12-26 14:20:33 星期三

综述: nginx unit php 的关系:

nginx -> 转发请求到 8300端口 -> unit 转发 8300 收到的请求 -> PHP

首先, 配置unit, 设置转发哪个端口的请求, 转发给哪个PHP文件, PHP的配置文件地址, 启动的进程数等

然后, 配置nginx, 将匹配到的域名/ip/端口, 通过 proxy 相关指令转发到 unit监听并转发的端口

而unit本身也还会监听某一个端口或sock文件, 用来接收配置信息的更改请求

具体操作

第一步: 安装, 我用的是centos 6 官网 http://unit.nginx.org/installation/#centos-packages

第二步: 启动 如果是按照官网, 通过yum 进行安装的, 启动方法就是

/usr/sbin/unitd --control 127.0.0.1:8224
2018/12/26 14:26:11 [info] 13924#13924 unit started

此时

ps -ef | grep unit
root : ? :: unit: main v1. [/usr/sbin/unitd --control 127.0.0.1:]
nobody : ? :: unit: controller
nobody : ? :: unit: router

第三步: 创建配置文件 , 复制并修改官网的json, 创建json文件: /etc/unit/test.json

{
"listeners": {
"*:8300": {
"application": "test"
}
}, "applications": {
"test": {
"type": "php",
"processes": ,
"root": "/www/unit/test",
"index": "index.php" }
}
}

第四步: 用curl命令将这个json文件发送给unit, 创建对象 (注意官网是通过 unix-socket 进程间通信的方法去发送json配置文件给unit的守护进程的, 在这里直接发送到unit监听的端口)

curl -X PUT -d @/etc/unit/test.json  http://localhost:8224/config 

此时多了两个application进程:

ps -ef | grep unit
root : ? :: unit: main v1. [/usr/sbin/unitd]
nobody : ? :: unit: controller
nobody : ? :: unit: router
root : ? :: unit: "test" application
root : ? :: unit: "test" application

第五步: 查看已发送的配置

curl http://127.0.0.1:8224

第六步: 更改json配置文件, 进程数设置为5, 并重新发送配置, 再查看进程数: application进程变为5个

ps -ef | grep unit
root : ? :: unit: main v1. [/usr/sbin/unitd --control 127.0.0.1:]
nobody : ? :: unit: controller
nobody : ? :: unit: router
root : ? :: unit: "test" application
root : ? :: unit: "test" application
root : ? :: unit: "test" application
root : ? :: unit: "test" application
root : ? :: unit: "test" application

未完待续.....

nginx unit PHP的更多相关文章

  1. svn + nginx unit + python3自动化发布web服务方法

    本周将python web服务管理更换成nginx unit以后发现接口性能有了明显的提升,访问速度快了不少.不过有个很大的问题就是使用svn自动化发布以后,服务并没有刷新使用新的代码运行,而又不懂得 ...

  2. 关于nginx unit服务非正常关闭后,无法重新启动问题的处理

    昨天在前领导技术大牛吕哥的帮忙下,python服务管理从nginx+supervisor+uwsgi+python3改为了轻便结构nginx + unit + python3,部署和配置起来顿时轻松起 ...

  3. Nginx unit 源码安装初体验

    Nginx unit 源码安装初体验 上次介绍了从yum的安装方法(https://www.cnblogs.com/wang-li/p/9684040.html),这次将介绍源码安装,目前最新版为1. ...

  4. nginx unit nodejs 模块试用(续)

      最新(应该是18 年了)nginx unit 发布了新的版本,对于nodejs 的支持有很大的改进,上次测试过,问题还是 比较多,这次使用新版本在测试下对于nodejs 的支持,以及以前block ...

  5. nginx unit nodejs 模块试用

      unit 对于nodejs 的支持是在10.25 发布的,基本能用,但是依然有好多问题,当前在测试的时候就发现,请求之后会block , 相关的issue 已经有人反馈了,最好使用源码编译,方便测 ...

  6. nginx Unit 服务器

    转自: https://github.com/nginx/unit/pull/18/ 感谢: https://www.v2ex.com/t/389528 English 简体中文 繁體中文 NGINX ...

  7. nginx unit java 试用

    unit 当前已经支持java了,当时支持基于servlet 的开发模式,以下是一个简单的学习 基于官方的demo 环境准备 docker-compose文件   version: "3&q ...

  8. nginx unit 的使用

    参考文档:http://unit.nginx.org/configuration/# 安装 可以参考这两篇博客: https://www.cnblogs.com/wang-li/p/9694391.h ...

  9. nginx unit的初探

    安装介绍: https://www.oschina.net/p/nginx-unit 可以看到,unit还是很强大的,居然特么都支持go 还有python 在/etc/yum.repos.d/unit ...

随机推荐

  1. JSON获取地址

    JSON获取地址一: https://github.com/stleary/JSON-java JSON获取地址二: http://genson.io/ JSON获取地址一: https://code ...

  2. mysql 增删改查基础操作的语法

    前提,数据表的结构是这样的 一.插入内容到数据表 INSERT INTO `数据库名`.`数据表名` (`t_title`, `t_con`) VALUES ('标题1', '内容1'); 或这样 I ...

  3. iptables对端口流量统计

    本篇文章主要介绍了Linux下如何对端口流量进行统计,小编觉得挺不错的,现在分享给大家,也给大家做个参考.一起跟随小编过来看看吧   在不修改源代码的情况下对程序暴露端口流量进行监控统计,可以利用Li ...

  4. NABCD--团队项目1

    N: 1.学校中有很多学生是外省的,然后不知道附近有什么地方周末可以去玩. 2.学校中学生有很多用不到的东西但是联系不到合适的买家. A: 我们可以做一个软件,通过学号注册登陆软件,这样可以防止有人去 ...

  5. anaconda相关使用方法

    本文不涉及anaconda的安装,如果需要请自行搜索,cnblogs和CSDN都挺多的. conda安装完,大部分人都jupyter notebook的使用需求,jupyter的开启命令是什么呢? j ...

  6. nginx配置反向代理CAS单点登录应用

    新增如下配置即可: location /cas { proxy_pass http://172.16.20.155:8080/cas; proxy_redirect default; proxy_re ...

  7. js手机滑块模仿

    点击文本框滑动选值 手机屏幕上的上下翻滚菜单使用JS实现.经过十几个小时的折磨,终于有了最初版本.实现办法如下描述: 一.要求和方法 1.一个input输入框,点击后弹出一个翻滚菜单盖在其上,翻滚选好 ...

  8. [SHOI2007]善意的投票

    题目描述 幼儿园里有n个小朋友打算通过投票来决定睡不睡午觉.对他们来说,这个问题并不是很重要,于是他们决定发扬谦让精神.虽然每个人都有自己的主见,但是为了照顾一下自己朋友的想法,他们也可以投和自己本来 ...

  9. 关于 mybatis-generator自定义注释生成 使用DefaultCommentGenerator重写来完成

    项目里新建表时model,mapper以及mapper.xml基本都是用Mybatis Generator(以下简称为MBG)自动生成的,但是MBG自动生成的model的注释实在有点非人类,至少中国人 ...

  10. Laravel底层实现原理系列

    Laravel 从学徒到工匠精校版 地址:https://laravelacademy.org/laravel-from-appreciate-to-artisan