Nginx实战系列之功能篇-后端节点健康检查

公司前一段对业务线上的nginx做了整理,重点就是对nginx上负载均衡器的后端节点做健康检查。目前,nginx对后端节点健康检查的方式主要有3种,这里列出:

1、ngx_http_proxy_module 模块和ngx_http_upstream_module模块(自带)
官网地址:http://nginx.org/cn/docs/http/ngx_http_proxy_module.html#proxy_next_upstream
2、nginx_upstream_check_module模块
官网网址:https://github.com/yaoweibin/nginx_upstream_check_module
3、ngx_http_healthcheck_module模块
官网网址:http://wiki.nginx.org/NginxHttpHealthcheckModule

公司业务线上对后端节点的健康检查是通过nginx_upstream_check_module模块做的,这里我将分别介绍这三种实现方式以及之间的差异性。

Read More

Nginx 负载均衡和反向代理

Upstream 模块是 Nginx负载均衡的主要模块,它提供了简单的办法来实现在轮询和客户端IP之间的后端服务器负载均衡,并可以对服务器进行健康检查。它的配置方式是:
在 nginx.conf 中加入:

1
2
3
4
upstream somename{
server domain1.abc.com weight=5;
server domain2.abc.com:8080
}

Read More

nginx打开php错误提示

首先要编辑php配置文件:

1
2
3
vi /etc/php.ini
error_reporting = E_ERROR
display_errors = On

因为我开启了php-fpm。所以,还要编辑php-fpm.conf文件,把php_flag[display_errors]设为on:

1
2
vi php-fpm.conf
php_flag[display_errors] = on

这样在开发的时候就可以在浏览器中显示php出现的错误了,非常方便。

Read More

Nginx使用的php-fpm的两种进程管理方式及优化

PS:前段时间配置php-fpm的时候,无意中发现原来它还有两种进程管理方式。与Apache类似,它的进程数也是可以根据设置分为动态和静态的。

php-fpm目前主要又两个分支,分别对应于php-5.2.x的版本和php-5.3.x的版本。在5.2.x的版本中,php-fpm.conf使用的是xml格式,而在新的5.3.x版本中,则是和php.ini一样的配置风格。

在5.2.x版本中,php-fpm.conf中对于进程管理号称是有两种风格,一种是静态(static)的,一种是类似于apache风格(apache-like)的。

Read More

nginx File not found 错误

nginx配置php老是出错,浏览器打开php脚本报File not found错误,最后才发现是$document_root的设置问题。

1
2
3
4
5
6
7
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;
}

Read More