上海isp 发表于 2018-11-10 11:52:51

Linux的企业-Nginx

  一.Nginx的介绍
  Nginx——Ngine X,是一款自由的、开源的、高性能 HTTP 服务器和反向代理服务器;也是一个 IMAP、POP3、SMTP 代理服务器;也就是说 Nginx 本身就可以托管网站(类似于 Tomcat 一样),进行 Http 服务处理,也可以作为反向代理服务器使用。
  Nginx 解决了服务器的 C10K(就是在一秒之内连接客户端的数目为 10k即 1 万)问题。它的设计不像传统的服务器那样使用线程处理请求,而是一个更加高级的机制—事件驱动机制,是一种异步事件驱动结构。
  二.Nginx的安装
  
  客户机:172.25.29.250
  nginx服务器:172.25.29.1
  www.westos.org-server2:172.25.29.2
  www.westos.org-server3:172.25.29.3
  
  1.解压配置文件

  2.修改配置文件,隐藏版本号


  3.关闭gcc的debug调试模式,节省空间


  4.设置nginx的目录及各种模块比如openssl加密等

  5.安装过程出现error,逐步安装所需要的devel开发包,记得加-devel,安装pcre-devel

  6.安装openssl-devel


  没有保存,可以直接编译,如未安装gcc包,需要安装gcc包
  7.make编译

  8.安装编译后的包

  9.创建nginx的本地家目录,uid:800

  10.进入到/usr/local/nginx/sbin下,为方便调用做软连接
  -t 检测nginx语法是否错误

  11.用ps ax 查看进程,nginx正常开启

  三.Nginx多核绑定
  
  1.nginx的配置
  cd/usr/local/nginx/conf/

  vim /usr/local/nginx/conf/nginx.conf
  在最上端修改添加

  worker_processes2;                     二核CPU,开启2个进程
  worker_cpu_affinity 01 10;          01和10分别表示第一个CPU和第二个CPU(三个001,010,100)
  worker_connections65535;      连接数,65535为最大的进程数
  2.修改内核最大连接参数
  vim /etc/security/limits.conf
  nginx         -       nofile          65535      最后一行添加,最大进程数
  四.配置nginx证书加密
  1.配置文件vim /usr/local/nginx/conf/nginx.conf
  ssl_certificate_keycert.pem       加密证书

  2.生成证书,pem为私钥,在此目录下查看Makefile可知pem包含证书与加密


  3.移至/usr/local/nginx/conf目录下,重新加载nginx,使之生效

  4.客户端测试


  五.虚拟主机,定义多个不同域名站点的后端服务器
  1.配置文件vim /usr/local/nginx/conf/nginx.conf

  2.创建默认发布文件

  3.测试


  六. 负载均衡round-robin(轮询)
  1.轮询是nginx中默认的负载均衡模式

  将server2与server3的httpd的端口改为如上upstream中需求

  轮询测试:


  2.ip_hash算法
  ip_hash模式会根据来源IP和后端配置来做hash分配,确保固定IP只访问一个后端。

  测试:

  3.weight为权重,若不设置则默认为1

  测试:

  4.主备,当前两主机崩溃时由127.0.0.1接手

  测试主备(server2与server3关闭httpd服务,server1顶替)

  七.重新定向
  注:配置完成后做好本地解析
  1.配置文件vim /usr/local/nginx/conf/nginx.conf
  2.输入westos.org重定向到bbs.westos.org

  测试:


  3.添加luntan.westos.org重定向到bbs.westos.org

  测试:

  4.将bbs.westos.org重定向到https://bbs.westos.org


  测试:


  八.访问其他发布目录
  1.新建发布目录文件
  mkdir/static/images-p
  vim index.html   (images)
  2.配置文件vim /usr/local/nginx/conf/nginx.conf
  location /images = bbs.westos.org/images
  alias后面是绝对路径

  3.客户端测试


页: [1]
查看完整版本: Linux的企业-Nginx