nginx

1.nginx网站

nginx.org nginx开源软件(安装时注意有stable稳定版,否则会有一些不可预知问题)
www.nginx.com nginx plus收费软件,企业级(功能强大)

2.nginx配置

1)

virsh start server1
virsh start server2
virsh start server3

server1:
tar zxf nginx-1.12.0.tar.gz ##安装nginx
yum install gcc

cd nginx-1.12.0/
./configur  
./configure --prefix=/usr/local/nginx --with-http_ssl_module --with-http_stub_status_module

yum install prce-devel openssl-devel zlib-devel -y  ##安装组件
make && make install

/usr/local/nginx/conf/nginx.conf    ##主配置文件
/usr/local/nginx/sbin/nginx     ##主程序
ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin/  ##做链接
nginx -t        ##检测
nginx           ##启动
##注意端口冲突

检测
连接 172.25.18.1
或者 curl localhost  |  curl -i localhost (发现nginx显示版本号,不安全)
cd /usr/local/nginx
du -sh  ##发现5.8m有点大,开启了gcc.debug检测

2)静态更新,更改模块需重新安装

nginx -s stop   ##停止
rm -rf /usr/local/nginx ##删除重新配置
rm ~/nginx-1.12.0/
tar zxf nginx-1.12.0.tar.gz ##配置还原最初

~/nginx-1.12.0/src/core/nginx.h

#define nginx_version      1012000
##define nginx_version      "1.12.0"
##define nginx_ver          "nginx/"    ##显示版本号

~/nginx-1.12.0/auto/cc/gcc
# debug
# #cflags="$cflags -g"     ##是否检测debug

vim /etc/security/limits

./configure --prefix=/usr/local/nginx --with-http_ssl_module --with-http_stub_status_module

make && make install

nginx   ##启动

检测
curl -i localhost

cd /usr/local/nginx/
du -sh      ##显示972k

useradd nginx   ##和apacha一样,在/etc/passwd中匹配对应用户

/etc/local/nginx/conf/nginx.conf
user  nginx nginx;  ##用户不改时默认是nobody,现在改为用户nginx,组nginx
worker_processes  1;    ##工作核心,根据服务器cpu核心数来改,也可调用auto函数,自动匹配
***********************************************************
可以手动指定
worker_processes  2;
worker_cpu_affinity 01 10;  worker_cpu_affinity默认是没有开启的,分别代表逻辑cpu

worker_processes  4;
worker_cpu_affinity 0001 0010 0100 1000;

......

***********************************************************
events {
    worker_connections  65535;  ##连接文件数,1024太小,不够用
    }

nginx -s reload
##虚拟机可以加cpu数来实验worker_processes工作核心
##lscpu检验
ps aux  ##看nginx的worker子进程用户是否为nginx,工作核心数决定开几个worker子程

sysctl -a | grep file

vim /etc/security/limits.conf
# end of file
nginx           -           nofile          65535
nginx用户 软件与硬件   文件      文件限制65535

su - nginx
ulimit -n   ##查看文件限制数

3)主配置文件

*1

/usr/local/nginx/conf/nginx.conf
http {
        upstream westos{    ##nginx自带论询与健康监测
        server 172.25.18.2:80;
        server 172.25.18.3:80;
}

server {
        listen 80;
        server_name www.westos.org;
        location / {
            proxy_pass http://westos;
       }
}

nginx -t    ##检测
nginx -s reload

客户端真机中
/etc/hosts     添加172.25.18.1     www.westos.org本地解析
server2   server3  后端服务器开启httpd服务

*2

server3 httpd   服务改为8080端口
/etc/httpd/conf/httpd.conf
listen 8080

server1
/usr/local/nginx/conf/nginx.conf
http {
        upstream westos{
        server 172.25.18.2:80;
        server 172.25.18.3:8080;    ##对应改为8080端口
}

*3

backend模块
http {
        upstream westos{
        server 172.25.18.2:80 weight=3;     ##weight=3(加权论调)
        server 172.25.18.3:8080;
        server 127.1.0.0:8080 backup;
}
server {
         listen 8080;
         server_name localhost;
         charset utf-8;         ##后台服务器中标识中文识别
         location / {
                 root /backup;
                 index index.html;
         }
}

mkdir /backup
echo "当前站点维护中。。。" >> /backup/index.html

*4

least_conn模块
http {
        upstream westos{
        least_conn;     ##最小服务器业务量检测并分发业务
    server 172.25.18.2:80;
        server 172.25.18.3:8080;
        server 127.1.0.0:8080 backup;
}

*5

ip_hash模块
http {
        upstream westos{
    ip_hash;        ##ip  hash连接分配(同一ip负载均衡新的后端服务器)
    server 172.25.18.2:80;
        server 172.25.18.3:8080;
        #server 127.1.0.0:8080 backup;  ##添加hash后backup不可用
}

*6

hash $request_uri consistent模块
http {
        upstream westos{
        hash $request_uri consistent;  ##因为cdn发来都是同一ip,用这个模块可以根据ip来负载均衡
        server 172.25.18.2:80;
        server 172.25.18.3:8080;
        #server 127.1.0.0:8080 backup;
}

*7

sticky模块
重新删除安装
nginx-1.10.1.tar.gz ##早一点的版本
nginx-sticky-module-ng.tar.gz

cd nginx-1.10.1
./configure --prefix=/usr/local/nginx --with-http_ssl_module --with-http_stub_status_module --add-module=/root/nginx-sticky-module-ng/

http {
        upstream westos{
    sticky;         ##浏览器中保留cookies,进行匹配后分发后端服务器
        server 172.25.18.2:80;
        server 172.25.18.3:8080;
阅读更多
个人分类: linux基础
想对作者说点什么? 我来说一句

nginx-window

2017年09月15日 1.39MB 下载

nginx源码 1.18版

2011年11月20日 1.82MB 下载

nginx源码分析文档

2009年07月03日 12KB 下载

nginx-1.9.11.tar.gz

2018年03月11日 874KB 下载

nginx入门txt

2010年11月23日 13KB 下载

nginx权威指南

2018年03月25日 13.14MB 下载

Nginx简介(Nginx相关介绍)

2018年03月19日 14KB 下载

nginx-1.13.8.zip

2018年03月01日 22.74MB 下载

nginx开发指南

2018年04月23日 24.77MB 下载

没有更多推荐了,返回首页

不良信息举报

nginx

最多只允许输入30个字

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭