zhanghong 发表于 2018-11-11 07:06:06

Nginx服务基础

  Nginx专为性能优化而开发,其最知名的优点是它的稳定性和低系统资源消耗,以及对HTTP并发链接的高处理能力(单台服务器可支持30000~ 50000个并发请求)正因为如此,大量提供社交网络、新闻资讯、电子商务及虚拟主机等服务的企业纷纷选择Nginx来提供Web服务。
  实验环境:
  在虚拟机Centos6.5系统上搭建Nginx1.6版本,IP地址:192.168.100.10
  链接:https://pan.baidu.com/s/18fTrSG25dHyWvGmFaYsl0w 密码:bvuv(Nginx1.6软件包)
  一.编译安装Nginx
  1.安装依赖包:yum -y install pcre-devel zlib-devel gcc gcc-c++
  2.创建运行用户和组,Nginx服务程序默认以nobody身份运行,创建专门的用户账户,以便更准确的控制器访问权限,增加灵活性、降低安全风险。如:创建一个名为nginx用户,不建立宿主目录,也禁止登录Shell环境。
  useradd -M -s /sbin/nologin nginx
  3.将nginx的软件包挂载,并解压到/opt/目录
  
  4.配置编译安装
  
  5.检查配置文件及端口是否开启
  
  6.启动,停止Nginx
  
  7.使用脚本服务,为了使Nginx服务启动、停止、重启等操作更加方便,可以写入Nginx脚本服务,并使用chkconfig 和 service 工具进行管理,也更符合RHEL系统管理习惯。
  vim /etc/init.d/nginx
  
  chmod +x /etc/init.d/nginx
  chkconfig --add nginx
  二访问状态统计
  Nginx内置了 HTTP_STUB_STATUS 状态统计模块,用来反馈当前的Web访问情况,配置编译参数时可添加 –with-http_stub_status_module 来启用此模块支持。要使用Nginx的状态统计模块功能,除了启用内置模块外,还需要修改nginx.conf 配置文件,指定访问位置并添加stub_status配置代码。
  
  
  
  重启服务,关闭防火墙。在浏览器中访问测试
  
  
  
  
  三Nginx虚拟主机
  利用虚拟主机,不用为每个 要运行的网站提供一台单独的Nginx服务器或单独运行一组Nginx进程,虚拟主机提供了在同一台服务器、同一组Nginx进程上运行多个网站的功能。
  1.修改主配置文件,在配置文件最后加入2个新的server{}段,对应两个域名
  
  2.创建各个网站的目录和测试首页
  
  3.安装DNS 提供域名解析
  
  更改主配置文件vim /etc/named.conf
  
  更改区域配置文件
  
  更改区域数据配置文件,
  
  cp –p named.localhost benet.com.zone
  cp –p named.localhost accp.com.zone
  
  4.启动DNS服务,并测试解析
  
  重启Nginx服务
  
  5.分别访问这两个域名,查看是否访问到不同页面,测试配置是否成功
  
  
  四。基于授权访问控制
  Nginx与Apache 一样,可以实现基于用户授权的访问控制,当用户想要访问相应的网站或目录时,要求用户输入用户名和密码才能正常访问。
  1.使用htpasswd生成用户认证文件,在/usr/local/nginx/目录下生成passwd.db文件,用户名是zhangsa,密码输入两次。
  
  2.修改密码文件权限为400,将所有者改为nginx
  
  
  3.修改主配置文件,添加相应的认证配置项。
  
  4.重启服务,检验语法
  
  5.用浏览器访问网站
  
  五。基于客户端控制
  基于客户端的访问控制是通过客户端的IP地址,绝对是否允许对页面访问。Nginx基于客户端的访问控制要比Apache简单,规则如下:
  denyIP/IP段 :拒绝某个IP或IP段的客户端访问
  allow IP/IP段 :允许某个IP或IP段的客户端访问
  规则从上往下执行,如匹配则停止,不再往下匹配
  1.修改主配置文件,添加相应的配置项
  
  2.重启服务,检验语法
  
  3.访问测试
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  

页: [1]
查看完整版本: Nginx服务基础