Nginx网站服务——基础服务与访问控制

Nginx简述

Nginx是一款高性能,轻量级web服务软件,其稳定性高、系统资源消耗低, 对HTTP并发连接的处理能力高(单台物理服务器可支持30000~50000个并发请求)。

Nginx常用命令

nginx -t                    检查配置文件语法
nginx                       启动nginx服务
killall -3 nginx            停止nginx服务
killall -s QUIT nginx       停止nginx服务
killall -s HUP nginx        重载nginx服务
killall -1 nginx            重载nginx服务

实验环境

1.基础源码包(无密码):https://pan.baidu.com/s/14WvcmNMC6CFX1SnjHxE7JQ
2.CentOS 7版本Linux虚拟机

实验步骤

第一步:远程获取Windows上的源码包,并挂载到Linux上

[[email protected] ~]# smbclient -L //192.168.235.1
Enter SAMBA\root‘s password:
Sharename       Type      Comment
---------       ----      -------
LNMP            Disk  

[[email protected] ~]# mkdir /abc
[[email protected] ~]# mount.cifs //192.168.235.1/LNMP /abc
Password for [email protected]//192.168.235.1/LNMP:
[[email protected] ~]# ls /abc
Discuz_X3.4_SC_UTF8.zip    nginx-1.12.0.tar.gz  php-7.1.10.tar.bz2
mysql-boost-5.7.20.tar.gz  nginx-1.12.2.tar.gz  php-7.1.20.tar.gz

第二步:解压源码包

[[email protected] ~]# cd /abc
[[email protected] abc]# tar zxvf nginx-1.12.0.tar.gz -C /opt
[[email protected] abc]# ls /opt
nginx-1.12.0  rh

第三步:下载安装编译组件包

[[email protected] abc]# cd /opt
[[email protected] opt]# yum install -y > gcc \             //C语言
> gcc-c++ \         //c++语言
> pcre-devel \      //pcre语言工具
> zlib-devel        //压缩函数库

第四步:创建程序用户并配置Nginx服务相关组件

[r[email protected] opt]# useradd -M -s /sbin/nologin nginx
//创建程序用户nginx,并限定其不可登录终端
[[email protected] opt]# cd nginx-1.12.0/
[[email protected] nginx-1.12.0]# ./configure \
//配置nginx
> --prefix=//usr/local/nginx \
//指定安装路径
> --user=nginx //指定用户名
> --group=nginx //指定用户所属组
> --with-http_stub_status_module
//安装状态统计模块

第五步:编译与安装Nginx

[[email protected] nginx-1.12.0]# make && make install

第六步:优化Nginx服务启动脚本,并建立命令软连接

[[email protected] nginx-1.12.0]# ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin/
//创建nginx服务命令软链接到系统命令
[[email protected] nginx-1.12.0]# systemctl stop firewalld.service
//关闭防火墙
[[email protected] nginx-1.12.0]# setenforce 0
//关闭增强型安全功能
[[email protected] nginx-1.12.0]# nginx
//输入nginx 开启服务
[[email protected] nginx-1.12.0]# netstat -ntap | grep 80      //查看服务的80 端口,显示已开启
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      7520/nginx: master  

第七步:使用浏览器访问192.168.235.158,即可访问到Nginx服务的首页

第八步:制作service管理脚本

[[email protected] nginx-1.12.0]# cd /etc/init.d/
//切入启动配置文件目录

#!/bin/bash
# chkconfig: - 99 20
##注释信息
# description: Nginx Service Control Script
PROG="/usr/local/nginx/sbin/nginx"
##设置变量为nginx命令文件
PIDF="/usr/local/nginx/logs/nginx.pid"
##设置变量PID文件 进程号为5346
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

[[email protected] init.d]# chmod +x nginx
//授予nginx执行权限
[[email protected] init.d]# chkconfig --add nginx
//将nginx添加到service管理器
[[email protected] init.d]# service nginx stop
//使用service控制nginx服务停止
[[email protected] init.d]# service nginx start
//使用service控制nginx服务启动


Nginx的访问状态统计

启用HTTP STUB _STATUS状态统计模块
●配置编译参数时添加--with-http_ stub status module
(前文我们已经顺带安装了统计模块)
●nginx -V查看已安装的Nginx是否包含HTTP
STUB_ _STATUS模块

第一步:修改Nginx.conf配置文件

[[email protected] ~]# vim /usr/local/nginx/conf/nginx.conf
//编辑Nginx.conf配置文件
 35     server {
 36         listen       80;
 37         server_name  www.bdqn.com;
//在第37行指定域名
 39         charset utf-8;
//更改第39 行的内容,使其支持utf-8(中文字符集)

 43         location / {
 44             root   html;
 45             index  index.html index.htm;
 46         }
//在第46行下添加状态统计参数
         location /status {
              stub_status on;
              ##统计模块开启
              access_log off;
              ##访问日志关闭
          }

第二步:安装并配置DNS服务

[[email protected] ~]# yum -y install bind
//安装DNS服务的bind包
[[email protected] ~]# vim /etc/named.conf
//编辑主配置文件

options {
        listen-on port 53 { any; };
        ##将监听地址127.0.0.1替换为any,
        listen-on-v6 port 53 { ::1; };
        directory       "/var/named";
        dump-file       "/var/named/data/cache_dump.db";
        statistics-file "/var/named/data/named_stats.txt";
        memstatistics-file "/var/named/data/named_mem_stats.txt";
        recursing-file  "/var/named/data/named.recursing";
        secroots-file   "/var/named/data/named.secroots";
        allow-query     { any; };
        ##将授权localhost替换为any

[[email protected] ~]# vim /etc/named.rfc1912.zones
//编辑区域配置文件

zone "bdqn.com" IN {        type master;
##将localhost替换为域名bdqn.com
        file "bdqn.com.zone";
        ##指定区域数据配置文件bdqn.com.zone
        allow-update { none; };
};      

[[email protected] ~]# cd /var/named
[[email protected] named]# cp -p named.localhost bdqn.com.zone
//复制区域数据配置文件模板为bdqn.com.zone
[[email protected] named]# vim bdqn.com.zone
//编辑区域数据配置文件
$TTL 1D
@       IN SOA  @ rname.invalid. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        NS      @
        A       127.0.0.1
www IN  A       192.168.235.158
##删除原来末行的内容,添加域名解析地址为本机地址

[[email protected] named]# systemctl start named
//开启dns服务
[[email protected] named]# systemctl stop firewalld.service
//关闭防火墙
[[email protected] named]# setenforce 0
//关闭增强型安全功能

第三步:开启一台WIndows系统的虚拟机测试访问状态统计



Nginx访问控制授权

1.生成用户密码认证文件
2.修改主配置文件对相应目录,添加认证配置项
3.重启服务,访问测试

第一步:修改Nginx.conf配置文件

[[email protected] named]# vim /usr/local/nginx/conf/nginx.conf
//编辑Nginx.conf配置文件

       location / {
                auth_basic "secret";
                ##验证类型为秘密
                auth_basic_user_file /usr/local/nginx/passwd.db;
                ##指明验证文件路径
            root   html;
            index  index.html index.htm;
        }

第二步:安装httpd-tools工具包,并指定用户名与密码

[[email protected] named]# yum install httpd-tools -y
//安装httpd-tools工具包
[[email protected] named]# htpasswd -c /usr/local/nginx/passwd.db test
##创建test用户密码认证文件
New password:
##输入密码
Re-type new password:
##确认输入密码
Adding password for user test
[[email protected] named]# cat /usr/local/nginx/passwd.db
##查看密码文件信息
test:$apr1$mOje4UYz$BvRBABTcQB9XRG0SCCToZ1
[[email protected] named]# killall -1 nginx
//重载nginx服务

第三步:使用测试机验证访问控制授权效果

以上就是本次的Nginx网站服务的所有内容了,谢谢阅读!!!

原文地址:https://blog.51cto.com/14449521/2447746

时间: 2024-10-29 19:08:07

Nginx网站服务——基础服务与访问控制的相关文章

Nginx网站服务——服务基础,访问控制(实战!)

关于Nginx 一款高性能,轻量级web服务软件 稳定性高系统资源消耗低对HTTP并发连接的处理能力高 单台物理服务器可支持30000~50000个并发请求 环境 一台Linux服务器(192.168.13.128) 一台win10测试机 一,在Windows上将LAMP所需压缩软件包共享出来(此处如有问题请看之前的博客相关文章) 二,在Linux上使用远程共享获取文件并挂载到mnt目录下 [[email protected] ~]# smbclient -L //192.168.100.3/

linux学习笔记-工程师技术:HTTP服务基础(Web服务基本搭建)、网页内容访问、安全Web服务、动态网站的部署

两台虚拟机,均要检测 1.IP地址     ifconfig 2.是否可以解析,nslookup server0.example.com 3.Yum是否可用   yum repolist 4.防火墙默认区域修改为trusted ------------------------------------------------------------------------------------------- HTTP服务基础 Web通信基本概念 基于 B/S (Browser/Server)架构

企业级Nginx服务基础到架构优化详解--25条

1.隐藏nginx header版本号 2.更改源码隐藏软件名称 3.更改nginx默认用户及用户组 4.配置nginx worker进程个数 5.根据CPU核数进行nginx进程优化 6.nginx事件处理模型优化 7.调整Nginx worker单个进程允许的客户端最大连接数 8.配置Nginx worker进程最大打开文件数 9.开启高效的文件传输模式 10.设置连接超时时间 11.上传文件大小设置(动态应用) 12.fastcgi调优(配合PHP引擎动态服务) 13.配置nginx gz

企业级Nginx服务基础到架构优化详解

1.隐藏nginx header版本号 2.更改源码隐藏软件名称 3.更改nginx默认用户及用户组 4.配置nginx worker进程个数 5.根据CPU核数进行nginx进程优化 6.nginx事件处理模型优化 7.调整Nginx worker单个进程允许的客户端最大连接数 8.配置Nginx worker进程最大打开文件数 9.开启高效的文件传输模式 10.设置连接超时时间 11.上传文件大小设置(动态应用) 12.fastcgi调优(配合PHP引擎动态服务) 13.配置nginx gz

部署Nginx网站服务实现访问状态统计以及访问控制功能

Nginx专为性能优化而开发,最知名的优点是它的稳定性和低系统资源消耗,以及对HTTP并发连接的高处理能力,单个物理服务器可支持30000-50000个并发请求. Nginx的安装文件可以从官方网站http://www.nginx.org/下载,下面以Nginx1.12版本为例,基于CentOS7,部署Nginx网站服务. 安装Nginx 第一步源码编译安装 1. 安装支持软件 Nginx的配置及运行需要gcc . gcc-c++ . make . pcre.pcre-devel.zlib-de

Nginx服务基础

Nginx专为性能优化而开发,其最知名的优点是它的稳定性和低系统资源消耗,以及对HTTP并发链接的高处理能力(单台服务器可支持30000  ~ 50000个并发请求)正因为如此,大量提供社交网络.新闻资讯.电子商务及虚拟主机等服务的企业纷纷选择Nginx来提供Web服务. 实验环境: 在虚拟机Centos6.5系统上搭建Nginx1.6版本,IP地址:192.168.100.10 链接:https://pan.baidu.com/s/18fTrSG25dHyWvGmFaYsl0w 密码:bvuv

在Linux系统中搭建Nginx网站服务

关于Nginx 一款高性能.轻量级Web服务软件 稳定性高 系统资源消耗低 对HTTP并发连接的处理能力高 单台物理服务器可支持30000 ~ 50000个并发请求 Nginx编译安装 Nginx源码包下载 安装支持软件 [[email protected] opt] yum install gcc gcc-c++ make pcre-devel zlib-devel -y 创建运行用户.组 [[email protected] opt] useradd -M -s /sbin/nologin

Centos 7部署Nginx网站服务

一.Nginx服务基础 Nginx专为性能优化而开发,其最知名的优点是它的稳定性和低系统资源消耗,以及对HTTP并发连接的高处理能力(单台物理服务器可支持30000~50000个并发请求).正因为如此,大量提供社交网络.新闻资讯.电子商务及虚拟主机等服务的企业纷纷选择Nginx来提供Web服务. 1.Nginx服务的优势 Nginx是一个很牛的高性能Web和反向代理服务器,它具有有很多非常优越的特性: 高并发连接:官方测试能支撑5万并发连接,在实际生产环境中跑到2,~3W并发连: 内存消耗少:在

Nginx网站服务

一.简介 Nginx ("engine x") 是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP服务器.Nginx是由Igor Sysoev为俄罗斯访问量第二的Rambler.ru站点开发的,第一个公开版本0.1.0发布于2004年10月4日.其将源代码以类BSD许可证的形式发布,因它的稳定性.丰富的功能集.示例配置文件和低系统资源的消耗而闻名.2011年6月1日,nginx 1.0.4发布. Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件