Nginx

一、什么是nginx

主要为优化性能,是一种反向代理,负载均衡服务器,支持热部署(启动容易,并且可以做到7*24不间断运行,即使运行数个月也不需要启动,还可以在不间断服务的情况下,对软件进行版本升级)。

二、安装和编译

1.下载nginx

get nginx-1.14.0.tar.gz  


2.解压

tar zxf nginx-1.14.0.tar.gz 


3.安装软件,安装后才能够进行编译操作
 

 yum instal  gcc pcre-devel  openssl-devel  -y  


4.源码编译三步:
 

cd nginx-1.14.0
/configure --prefix=/usr/local/nginx  --with-http_ssl_module --with-http_status_module  --with-threads --with-file-aio
make
make install


5.运行nginx

cd /usr/local/nginx/sbin/
./nginx 


6.查看本地服务器是否为nginx

curl -I localhost
    HTTP/1.1 200 OK
    Server: nginx/1.14.0  
    Date: Mon, 01 Oct 2018 12:19:31 GMT
    Content-Type: text/html
    Content-Length: 612
    Last-Modified: Mon, 01 Oct 2018 12:17:40 GMT
    Connection: keep-alive
    ETag: "5bb21064-264"
    Accept-Ranges: bytes

服务器为nginx/1.14.0,若需要伪装服务器名称,可以进行如下步骤:
(1)关闭nginx      

 ./nginx -s stop  


(2)删除前面编译出来的文件

cd /usr/local/nginx
rm -rf *


(3)将编译的结果清除

cd nginx-1.14.0
  make clean 


(4)修改显示的名称,去掉版本号

vim nginx-1.14.0/src/core/nginx.h 
    #define NGINX_VER          "nginx"


(5)注释掉debug

vim nginx-1.14.0/auto/cc/gcc  
# debug
#CFLAGS="$CFLAGS -g"

(6)设置完毕,重新编译:

./configure --prefix=/usr/local/nginx  --with-http_ssl_module --with-http_status_module  --with-threads --with-file-aio
make
make install

(7)制作软链接,可以直接输入nginx就启动服务

ln -s /usr/local/nginx/sbin/nginx  /usr/local/sbin 
nginx  启动


(8)查看服务器名称修改情况:
  

curl -I localhost  
    HTTP/1.1 200 OK
    Server: nginx
    Date: Mon, 01 Oct 2018 12:25:26 GMT
    Content-Type: text/html
    Content-Length: 612
    Last-Modified: Mon, 01 Oct 2018 12:24:24 GMT
    Connection: keep-alive
    ETag: "5bb211f8-264"
    Accept-Ranges: bytes

三、nginx的配置文件

1.打开配置文件

vim  /usr/local/nginx/conf/nginx.conf

2.配置文件的修改

    user nginx nginx;  用户为nginx 组为nginx
    worker_processes  2;    同时工作的进程为2
    worker_cpu_affinity 01 10;

    events {   最大可以打开文件数
        worker_connections  65535;  
    }

    http {
        upstream westos {
        sticky;  (ip_hash :同一个ip访问后端服务器不变)
        server 172.25.39.2:80;  两台真实服务器(weight = 2 访问两次,down 手动后台关闭)
        server 172.25.39.3:80;
        server 127.0.0.1:8080 backup;(vim /etc/httpd/conf/httpd.conf中将端口换成8080)
        }
    
    server {
                listen 80;
                server_name www.westos.org;

                location / {
                        proxy_pass http://westos;
                }
        }    

3.检查语法错误

nginx -t  

4.重新加载

nginx -s reload  

5.查看运行的程序
 

ps aux
lscpu

6.添加nginx用户

useradd -M -d /usr/local/nginx/  -u  800  nginx 

7.查看某普通用户可打开文件个数
 

ulimit -a  
sysctl -a | grep file
vim /etc/secudrity/limits.conf
nginx   -   nofile  65535    系统支持最大文件数

8.在测试主机测试:
curl www.westos.org

四、sticky

依靠cookie实现负载均衡,一个浏览器中的route对应一个服务器

1.下载安装包和解压

get nginx-goodies-nginx-sticky-module-ng-0..zip
unzip nginx-goodies-nginx-sticky-module-ng-0..zip


2.清除以前的编译记录

cd nginx-1.14.0
make clean 


3.编译:

./configure --prefix=/usr/local/nginx  --with-http_ssl_module --with-http_status_module  --with-threads --with-file-aio  --add-module=/var/ftp/pub/nginx-goodies-nginx-sticky-module-ng-0..
make
make install

4.更改配置文件
 

cd /usr/local/nginx/conf
vim nginx.conf
http {
        upstream westos {
        sticky;(静态模块,基于cookie的负载均衡解决方案,来使同一个客户端的请求落在同一台服务器上)
        server 172.25.39.2:80;  两台真实服务器(weight = 2 访问两次,down 手动后台关闭)
        server 172.25.39.3:80;
        #server 127.0.0.1:8080 backup;(vim /etc/httpd/conf/httpd.conf中将端口换成8080)
        }

5.在浏览器上进行测试

www.westos.org

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值