1. 下载nginx,并解压

http://nginx.org/

2. 下载health check模块

git clone https://github.com/yaoweibin/nginx_upstream_check_module.git

2.1 下载sticky session模块

from:https://bitbucket.org/nginx-goodies/nginx-sticky-module-ng/overview

git clone https://bitbucket.org/nginx-goodies/nginx-sticky-module-ng.git

3. 安装依赖模块包,配置预编译环境

yum -y install zlib zlib-devel openssl openssl-devel pcre-devel

建立nginx 组
groupadd -r nginx
useradd -s /sbin/nologin -g nginx -r nginx
id nginx

zlib:nginx提供gzip模块,需要zlib库支持
openssl:nginx提供ssl功能
pcre:支持地址重写rewrite功能

4. 进入nginx解压目录,开始编译

*注意最后一个add-module,是编译加上health check模块

./configure \
--prefix=/opt/apps_install \
--sbin-path=/opt/apps_install/nginx-1.10.2/sbin/nginx \
--conf-path=/opt/conf/nginx/nginx.conf \
--error-log-path=/opt/logs/nginx/error.log \
--pid-path=/var/run/nginx/nginx.pid \
--user=nginx \
--group=nginx \
--with-http_ssl_module \
--with-http_flv_module \
--with-http_gzip_static_module \
--http-log-path=/opt/logs/nginx/access.log \
--http-client-body-temp-path=/opt/apps_install/nginx-1.10.2/client_body_temp \
--http-proxy-temp-path=/opt/apps_install/nginx-1.10.2/proxy_temp \
--http-fastcgi-temp-path=/opt/apps_install/nginx-1.10.2/fastcgi_temp \
--http-uwsgi-temp-path=/opt/apps_install/nginx-1.10.2/uwsgi_temp \
--http-scgi-temp-path=/opt/apps_install/nginx-1.10.2/scgi_temp \
--with-http_stub_status_module \
--add-module=/home/nginx-1.10.2/nginx_upstream_check_module \
--add-module=/home/nginx-1.10.2/nginx-sticky-module-ng
 
5、make && make install
 
6、ln -s /opt/apps_nginx/nginx-1.10.2/sbin/nginx /usr/bin/nginx
6.1 nginx -V

7、使用sticky session

  将一下内容放置在upstream模块里

sticky [name=route] [domain=.foo.bar] [path=/] [expires=1h]
[hash=index|md5|sha1] [no_fallback] [secure] [httponly];

8、使用healthcheck

10、常见问题

在配置nginx提示如下错误时:
[emerg]: getpwnam(“nginx”) failed
解决方案:
nginx用户没有创建和打开,执行3中的创建nginx用户和给予权限即可

自编译安装nginx的更多相关文章

  1. centos系统编译安装nginx+php环境另加独立mysql教程

    以前看过的安装nginx+php环境都带了mysql数据库了,这个是因为很多站长都是nginx+php+mysql都在同一台服务器了,那么今天我们是单独处理了,一个是nginx+php环境,然后mys ...

  2. Centos7 编译安装 Nginx PHP Mariadb Memcached 扩展 ZendOpcache扩展 (实测 笔记 Centos 7.3 + Mariadb 10.1.20 + Nginx 1.10.2 + PHP 7.1.0 + Laravel 5.3 )

    环境: 系统硬件:vmware vsphere (CPU:2*4核,内存2G,双网卡) 系统版本:CentOS-7-x86_64-Minimal-1611.iso 安装步骤: 1.准备 1.0 查看硬 ...

  3. CentOS7 编译安装 Nginx (实测 笔记 Centos 7.0 + nginx 1.6.2)

    环境: 系统硬件:vmware vsphere (CPU:2*4核,内存2G,双网卡) 系统版本:CentOS-7.0-1406-x86_64-DVD.iso 安装步骤: 1.准备 1.1 显示系统版 ...

  4. linux软件管理之------编译安装nginx服务器并手动编写自动化运行脚本

    红帽系列的 linux软件管理分为三类:1. rpm 安装软件.2. yum 安装软件.3. 源码包编译安装.前面两种会在相关专题给出详细讲解.源码包的编译安装是非常关键的,我们知道linux的相关版 ...

  5. Mac Pro 编译安装 Nginx 1.8.1

    #下载相关源码包,统一放到 /usr/local/src 目录下: http://nginx.org/download/nginx-1.8.1.tar.gz http://zlib.net/zlib- ...

  6. 【转】linux 编译安装nginx,配置自启动脚本

    linux 编译安装nginx,配置自启动脚本 本文章来给各位同学介绍一篇关于linux 编译安装nginx,配置自启动脚本教程,希望有需要了解的朋友可一起来学习学习哦. 在公司的suse服务器装ng ...

  7. linux 编译安装nginx,配置自启动脚本

    本文章来给各位同学介绍一篇关于linux 编译安装nginx,配置自启动脚本教程,希望有需要了解的朋友可一起来学习学习哦. 在公司的suse服务器装nginx,记录下安装过程: 参照这篇文章:Linu ...

  8. 编译安装nginx并修改版本头信息—参考实例

    今天做实验的时候,想起我那台yum安装的nginx+php-fpm+mysql服务器上的nginx版本有点低了,并且还要加两个第3方模块,就去nginx官网下载了最新稳定版nginx-1.0.6,好了 ...

  9. ubuntu 12.04 编译安装 nginx

    下载源码包 nginx 地址:http://nginx.org/en/download.html 编译前先安装两个包: 直接编译安装会碰到缺少pcre等问题,这时候只要到再安装两个包就ok sudo ...

  10. ubuntu 14.04 编译安装 nginx

    下载源码包 nginx 地址:http://nginx.org/en/download.html  下载nginx 1.4.7 编译前先安装两个包: 直接编译安装会碰到缺少pcre等问题,这时候只要到 ...

随机推荐

  1. C++11多线程教学(一)

    本篇教学代码可在GitHub获得:https://github.com/sol-prog/threads. 在之前的教学中,我展示了一些最新进的C++11语言内容: 1. 正则表达式(http://s ...

  2. console中应用MFC类的方法

    1.添加#include <afx.h>或者<afxwin.h> 这时会报错1>c:\program files\microsoft visual studio 8\vc ...

  3. 全选与反选(dom与jquery比较)

    <html> <head> <title>全选或反选(dom)</title> <meta http-equiv="Content-Ty ...

  4. SPRING IN ACTION 第4版笔记-第九章Securing web applications-010-拦截请求

    一. What if you wanted to restrict access to certain roles only on Tuesday? Using the access() method ...

  5. (转)Android系统自带样式(@android:style/)

    在AndroidManifest.xml文件的activity中配置 1.android:theme="@android:style/Theme" 默认状态,即如果theme这里不 ...

  6. Git教程之标签管理

    发布一个版本时,我们通常先在版本库中打一个标签,这样,就唯一确定了打标签时刻的版本.将来无论什么时候,取某个标签的版本,就是把那个打标签的时刻的历史版本取出来.所以,标签也是版本库的一个快照.Git的 ...

  7. python学习笔记一--字符串

    一.字符串: (一)字符串里单个元素的操作 1. 单个字符(元素)的序列组合. 2. 序列:单个字符的位置 3. 序列的操作:内置函数len获取长度,加位置索引 4. 获取字符串的里的元素:正向索引+ ...

  8. 为Windows 7添加“Internet打印”功能

    http://wangchunhai.blog.51cto.com/225186/1156589/

  9. ARM处理器全解析:A8/A9/A15都是什么?

    前不久ARM正式宣布推出新款ARMv8架构的Cortex-A50处理器系列产品,以此来扩大ARM在高性能与低功耗领域的领先地位,进一步抢占移动终端市场份额.Cortex-A50是继Cortex-A15 ...

  10. 【HDOJ】4347 The Closest M Points

    居然是KD解. /* 4347 */ #include <iostream> #include <sstream> #include <string> #inclu ...