Nginx网站服务

关于Nginx

一款高性能、轻量级Web服务软件

  • 稳定性高
  • 系统资源消耗低
  • 对HTTP并发连接的处理能力高
    单台物理服务器可支持30 000~50 000个并发请求

Nginx编译安装

1、准备Nginx安装包,和安装支持软件
在这里插入图片描述

[root@localhost nginx]# yum install gcc gcc-c++ pcre-devel zlib-devel -y

2、创建运行用户、组(不创建家目录)

[root@localhost nginx]# useradd -M -s /sbin/nologin nginx

3、编译安装nginx

[root@localhost nginx]# tar zxvf nginx-1.12.2.tar.gz -C /opt
[root@localhost nginx]# cd /opt/nginx-1.12.2/
[root@localhost nginx-1.12.2]# ./configure \
> --prefix=/usr/local/nginx \			//指定安装路径
> --user=nginx \						//指定用户
> --group=nginx \						//指定组
> --with-http_stub_status_module		//统计模块
[root@localhost nginx-1.12.2]# make && make install

4、nginx命令执行路径优化,使系统能够自动识别

[root@localhost nginx-1.12.2]# ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin

Nginx运行控制

检查配置文件
在这里插入图片描述
启动、重载配置、停止Nginx
在这里插入图片描述Nginx网站服务_第1张图片

[root@localhost ~]# killall -s QUIT nginx				//关闭服务
[root@localhost ~]# killall -3 nginx					//关闭服务
[root@localhost ~]# killall -s HUP nginx				//重载服务
[root@localhost ~]# killall -1 nginx					//重载服务

Nginx添加为系统服务,制作管理脚本

[root@localhost ~]# vim /etc/init.d/nginx

#!/bin/bash
# chkconfig: - 99 20
# description: Ngins Service Control Script
PROG="/usr/local/nginx/sbin/nginx"
PIDF="/usr/local/nginx/logs/nginx.pid"
case "$1" in
start)
    $PROG
    ;;
stop)
    kill -s QUIT $(cat $PIDF)
    ;;
restart)
     $0 stop
     $0 start
     ;;
reload)
     kill -s HUP $(cat $PIDF)
     ;;
*)
     echo "Usage: $0 {start|stop|restart|reload}"
     exit 1
esac
exit 0

[root@localhost ~]# chmod +x /etc/init.d/nginx				//添加执行权限
[root@localhost ~]# chkconfig --add nginx					//将nginx添加到service管理中

Nginx状态统计

1、修改nginx.conf配置文件

[root@localhost ~]# vim /usr/local/nginx/conf/nginx.conf
        location ~/status {
                stub_status on;				//开启统计模块
                access_log off;				//关闭日志功能
        }

2、重启服务,查看状态统计信息

[root@localhost ~]# service nginx stop
[root@localhost ~]# service nginx start

Nginx网站服务_第2张图片

Nginx访问控制

基于授权的访问控制

1、修改主配置文件,添加认证配置项

[root@localhost ~]# vim /usr/local/nginx/conf/nginx.conf
        location / {
            auth_basic "secret";
            auth_basic_user_file /usr/local/nginx/passwd.db;
            …
        }

2、生成用户密码认证文件

 [root@localhost ~]# yum install httpd-tools -y
 [root@localhost ~]# htpasswd -c /usr/local/nginx/passwd.db test01
New password: 
Re-type new password: 
Adding password for user test01
[root@localhost ~]# cat /usr/local/nginx/passwd.db 
test01:$apr1$uUEh.Iwh$KP3.5YYoIzobsqgHB8xRo.

3、重启服务,访问测试

[root@localhost ~]# service nginx stop 
[root@localhost ~]# service nginx start

Nginx网站服务_第3张图片

基于客户端的访问控制

通过客户端IP地址,决定是否允许对页面访问
配置规则

  • deny IP/IP段:拒绝某个IP或IP段的客户端访问
  • allow IP/IP段:允许某个IP或IP段的客户端访问
  • 规则从上往下执行,如匹配则停止,不再往下匹配

配置步骤
1、修改主配置文件nginx.conf,添加相应配置项

  • 除主机192.168.150.128之外允许其他客户端访问
[root@localhost ~]# vim /usr/local/nginx/conf/nginx.conf
        location / {
            deny 192.168.150.128;
            allow all;
            …
        }

2、访问测试
Nginx网站服务_第4张图片

你可能感兴趣的:(Web服务器群集,nginx)