nginx安装 卸载 虚拟主机 负载均衡

Nginx

 

1、准备工作

下载安装:nginx.org   下载1.10

放到家目录下  解压

tar -zxf nginx-1.10.1.tar.gz

源码安装需要三步:

nginx解压后的目录内进行操作(确定80端口未被占用)

1.   ./configure

./configure --prefix=/usr/local/lnmp/nginx(默认安装位置) --with-http_ssl_module (自动编译)--with-http_stub_status_module(测试模块)

提示错误:缺少安装包

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

 

2.      make (编译)

3.       make  install  (生成)

cd /usr/local/lnmp/nginx/sbin/    ./nginx    (打开nginx

curl   -I  172.25.15.11  (可以查看到)

或者用火狐浏览器查看  可以查看到

 

2、删除卸载 nginx  

 /usr/local/lnmp/nginx/sbin/  下  执行  ./nginx -s stop   (停止nginx)

rm   -fr   /usr/local/lnmp/nginx

 解压后的目录内 make  clean

或者干脆点:删除家目录下的  解压后的文件  重新解压。

 

 

3、隐藏nginx版本号   关闭测试模式(会导致软件很大)

重新解压后 进入解压后的目录内

vim   src/core/nginx.h   (隐藏版本号)

 

vim  auto/cc/gcc   (关闭测试模式)

 

注释掉 179行  然后 进行  ./configure   && make   &&  make install

链接nginx  到系统下  可以直接执行nginx命令

ln  -s  /usr/local/lnmp/nginx/sbin/nginx     /usr/local/sbin/

which   nginx   (可以查看到nginx)

在系统下  输入   nginx (开启)

nginx  -s stop  (关闭)

nginx   -s  reload  (重载)

nginx    -t  检查配置文件语法问题

4、动态模块和静态模块

重新配置一个nginx  

./configure   --prefix=/tmp/nginx  --with-ngx_mail_module=dynamic(添加动态模块)

/tmp/nginx/  下多了一个modules  (目录内的模块为动态模块)

 

 

 

可以在配置文件  /tmp/nginx/conf/nginx.conf  中的第一行调用动态模块

apache中早就支持nginx刚出)

5、给nginx进程添加用户

ps  aux  可以查看到  nginx进程的workernobody

创建一个nginx用户:useradd  -s  /sbin/nologin  nginx

在主配置文件中修改  /usr/local/lnmp/nginx/conf/nginx.conf

 

 

Io负用方法:use  epoll

并发链接数:worker_connections 4096 X 2 (cpu)

用户为 nginx    线程数为2  绑定任务到  cpu的两个核

6、设置用户的最大进程数,文件数

vim   /etc/security/limits.conf

 

最大进程数为100

shell炸弹::(){  :|:& }; : (无限调用函数一直到系统资源枯竭  然后会卡住,所以要限制普通用户的最大进程数)

 

 

7nginx  开启443端口

网页测试:

修改配置文件:  /usr/local/lnmp/nginx/conf/nginx.conf

 

nginx  -t   (检测语法错误)

nginx  -s   reload  (重载nginx)

在网页测试:  server1.example.com/status     刷新

 

修改配置文件:  /usr/local/lnmp/nginx/conf/nginx.conf     server{}  就是个虚拟主机

 

/etc/pki/tls/certs/   下   输入指令make cert.pem(你想生成的ca证书)

输入证书的相关信息。将证书移动到   /usr/local/lnmp/nginx/conf/

Nginx   -t    nginx  -s   reload  

访问https://server1.example.com   可以查看到。

网页重写:

1.修改发布首页的方法

查看百度的源代码页  然后把代码写入发布首页  /usr/local/lnmp/nginx/html/index.html

 

2.网页重定向的方法

80端口下的虚拟主机中加入

 

nginx   -s  reload  访问  server1.example.com   可以跳转。

 

 

8、虚拟主机

/usr/local/lnmp/nginx/conf/nginx.conf

中添加两个虚拟主机

 

Location  /   代表发布目录的根

Root  发布页面的根目录

Index   发布页面的名字

9、nginx负载均衡

准备工作  server2server3作为后端服务器  维护www.wesots.org 这个域名

修改两个后端服务器的默认发布页面   以示区分

 

 

 

 

修改server1 nginx主配置文件

/usr/local/lnmp/nginx/conf/nginx.conf

 

 

17-23行  配置一个负载均衡组  这个组内定义两个后端服务器

Weight=2 代表权重为2,也就是说 访问两次再访问另一个服务器

Backup  备份服务器。  主辅服务器。这样只访问主服务器。当服务器挂掉 访问辅服务器

最好的设置方法为  

 

Nginx  的主机 默认发布页面 修改为   网站正在维护  请稍后再试

原因:如果两台都挂了,访问量将会全都负载到nginx主机上,不久nginx主机也会挂掉,所以提示 正在维护,减少访问量。

测试脚本:

for  i  in  $(seq 10);do curl www.westos.org;done

循环10次。

负载均衡的多种算法

round-robin  (轮回算法)

 

最小连接数 (谁被连的少 就分配给谁)

 

根据ip确定服务器(ip对应服务器)

 

Down掉一台主机  即使主机没有挂掉

 

根据url对应服务器

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值