目录

一:关于lnmp架构

	l	Linux
n Nginx
m MySQL
p Python/PHP

二:目录索引模块

1.目录索引模块内容
		 开启目录索引(默认启用)
autoindex on;
格式化文件大小
autoindex_exact_size off;
输出的格式
autoindex_format html;
使用时区
autoindex_localtime on;
1.开启目录索引(创建模块文件)
[root@web01 ~]# cd /etc/nginx/conf.d/
创建模块配置文件
[root@web01 conf.d]# vim autoindex.conf

server {

	server_name index.test.com;
listen 80;
# 开启目录索引
autoindex on; location / {
root /usr/share/nginx;
index index.html;
} }
2.测试
nginx -t
3.重启nginx
[root@web01 conf.d]# systemctl restart nginx
4.配置域名解析DNS
192.168.15.7 index.test.com

5.网址测试
index.test.com

二:目录索引(格式化文件大小)

1.家路径下<游戏压缩包>移动到指定网址路径
[root@web01 ~]# cp *.zip /usr/share/nginx/

2.查看网址
http://index.test.com/

3.修改配置文件
[root@web01 ~]# vim /etc/nginx/conf.d/autoindex.conf

autoindex_exact_size off;
4.测试
nginx -t
5.重启
systemctl restart nginx
6.网址测试
http://index.test.com/

三:目录索引(格式化输出)

  • 简介
1.模块
autoindex_format html; 默认html; 格式 可自定制格式 2.格式选择
html | xml | json | jsonp;
1.设置格式(json)
[root@web01 ~]# vim /etc/nginx/conf.d/autoindex.conf

autoindex_format json;
2.测试
nginx -t
3.重启
systemctl restart nginx
4.测试网址
http://index.test.com/

四:目录索引(时区模块)

  • 简介
 使用时区
autoindex_localtime on | off
默认是UTC时区 网址时间慢8小时 所以需要使用时区改成北京时间
1.修改模块配置文件
[root@web01 ~]# vim /etc/nginx/conf.d/autoindex.conf

autoindex_localtime on;
2.测试
nginx -t
3.重启
systemctl restart nginx

4.测试网址
http://index.test.com/

五:讲目录索引模块(模块全面定义到全局)

定义模块到全局配置 这样可以全局有效
不用每次都填写
1.创建目录
[root@web01 ~]# cd /etc/nginx

创建目录
[root@web01 nginx]# vim autoindex_params

# 开启目录索引
autoindex on;
# 格式化文件大小
autoindex_exact_size off;
# 输出的格式
autoindex_format html;
# 使用时区
autoindex_localtime on;
2.修改网址模块
全局定义后 原本的网址模块文件内的模块就可以进行删除并直接调用 nginx 全局定义内模块的文件(autoindex_params)了

3.测试
nginx -t
4.重启
systemctl restart nginx
5.网址运行
http://index.test.com/

六:Nginx认证模块

		Syntax:	auth_basic string | off;	如果跟string,就代表开启。
Default:
auth_basic off;
Context: http, server, location, limit_except Syntax: auth_basic_user_file file;
Default: —
Context: http, server, location, limit_except
1.认证模块(htpasswd)先下载
yum install httpd-tools -y
2.设置用户名和密码
[root@web01 ~]# cd /etc/nginx/
设置用户名密码 配置加密
[root@web01 conf.d]# htpasswd -c /etc/nginx/auth zhanglulu

3.查看存储密码文件
[root@web01 conf.d]# cd /etc/nginx/

4.创建网址模块文件并修改
将用户密码存储文件 添加到模块文件中
[root@web01 ~]# vim /etc/nginx/conf.d/autoindex.conf

server {

        server_name index.test.com;
listen 80; include autoindex_params;
auth_basic "This is Auth Basic!";
auth_basic_user_file /etc/nginx/auth; location / {
root /usr/share/nginx;
index index.html;
}
}
5.测试
nginx -t
6.重启
systemctl restart nginx
7.设置DNS解析域名
192.168.15.7 index.test.com

8.测试网址认证用户密码
http://index.test.com/

9.在命令行中的访问方式
[root@m01 ~]# curl -H'Host: index.test.com' http://cehngyang:123456@192.168.15.7
七:Nginx状态模块
1.修改网址模块
[root@web01 ~]# vim /etc/nginx/conf.d/autoindex.conf

server {

	server_name index.test.com;
listen 80; include autoindex_params;
auth_basic "This is Auth Basic!";
auth_basic_user_file /etc/nginx/auth; location /status {
stub_status;
} location / {
root /usr/share/nginx;
index index.html;
}
}
2.测试
nginx -t
3.重启
systemctl restart nginx
4.网址测试
index.test.com/status

* 目前程序开启的是短链接

长连接与短连接原理:

短连接的原理:
客户端连接--创建socket认证连接--维护连接--数据传输--关闭连接 #连接-》数据传输-》关闭连接; 长连接的原理:
客户端连接--创建socket认证连接--维护连接--数据传输--维护连接--数据传输.....-关闭连接 #连接-》数据传输-》保持连接-》数据传输-》保持连接-》…………-》关闭连接;

状态信息

Active connections	: 当前活动客户端连接数,包括Waiting连接数。 

accepts			   : 接受的客户端连接总数。

handled			   : 处理的连接总数。通常,accepts 除非达到某些资源限制(例如,worker_connections限制),否则 该参数值是相同的。

requests		   : 客户端请求的总数。

Reading			   : nginx 正在读取请求头的当前连接数。

Writing			   : nginx 将响应写回客户端的当前连接数。

Waiting			   : 当前等待请求的空闲客户端连接数。

八:限制ip访问模块

  • 简介
当计算机受到黑客攻击时,网址如果打不开时,因为网址被访问的太多次,导致我的请求变慢,所以用到了限制访问
1.禁用IP和开放IP访问
		allow	: 允许IP访问
deny :禁止IP访问
2.作用
允许
Syntax: allow address | CIDR | unix: | all;
Default: —
Context: http, server, location, limit_except 禁止 Syntax: deny address | CIDR | unix: | all;
Default: —
Context: http, server, location, limit_except 作用:
address : ip地址
CIDR : 网段
unix : 文件
all : 所以
3.执行顺序
允许与禁止的执行顺序是
优先级从上至下的执行的
可调换顺序

九:案例1:只允许192.168.15.1来访问(限制ip模块)

1.案例1:只允许192.168.15.1来访问
1、允许192.168.15.1来访问

allow 192.168.15.1;

2、禁止其他所有IP来访问

deny all;
2.进入网址模块配置
[root@web01 ~]# vim /etc/nginx/conf.d/autoindex.conf

server {

	server_name index.test.com;
listen 80; include autoindex_params;
auth_basic "This is Auth Basic!";
auth_basic_user_file /etc/nginx/auth; allow 192.168.15.1;
deny all; location /status {
stub_status;
} location / {
root /usr/share/nginx;
index index.html;
}
}
3.测试
nginx -t
4.重启
systemctl restart nginx
5.本机windows地址ip
ipconfig

6.实时监控日志
[root@web01 ~]# tail -f /var/log/nginx/access.log

7.本机网址访问测试 日志实时记录
index.test.com

  • 日志实时记录

8.修改DNS解析后再次测试

9.192.168.15.1本机再次网址测试被拒绝访问
http://index.test.com/

10.总结(拒绝原因)
拒绝原因
地址 ip 设置成 172.16.1.7 内网
解析作用 DNS 将域名解析成 ip地址 1.域名访问内网 需要通过VPN 因不在同一个局域网
2.VPN转换到跳板机,在进行访问网址ip地址
3.访问失败
原因:
网址ip设置了访问权限模块 只允许192.168.15.1 访问
其他拒绝

十:案例2:只允许192.168.15.0 网段来访问(限制ip)

  • 案例需求
只允许192.168.15.0 网段来访问

1、允许192.168.15.0 网段来访问

allow 192.168.15.0/24;

2、禁止其他所有IP来访问

deny all;
1.修改网址模块
[root@web01 ~]# vim /etc/nginx/conf.d/autoindex.conf

server {

	server_name index.test.com;
listen 80; include autoindex_params;
auth_basic "This is Auth Basic!";
auth_basic_user_file /etc/nginx/auth; location /status {
stub_status;
} allow 192.168.15.0/24;
deny all;
location / {
root /usr/share/nginx;
index index.html;
}
}
2.测试
nginx -t
3.重启
systemctl restart nginx
4.修改DNS解析ip
192.168.15.7 index.test.com

5.本机192.168.15.1 访问网址
http://index.test.com/

6.其他用户访问 不同网段区别
1.访问192.168.15.7 网段成功
2.访问172.16.1.7 网段失败

十一:案例3:要求禁止192.168.15.1来访问(限制ip模块)

  • 需求
1、禁止  1来访问

deny 192.168.15.1;

2、允许其他所有的IP来访问

allow all;
1.修改网址模块
[root@web01 ~]# vim /etc/nginx/conf.d/autoindex.conf

2.测试
nginx -t
4.重启
systemctl restart nginx
5.测试网址
windows本机(192.168.15.1)被拒绝访问该网址
http://index.test.com/

  • 总结
禁用 或 允许
[root@web01 conf.d]# tail -f /var/log/nginx/access.log

十二:只允许通过VPN来访问

  • 案例需求
允许:
allow 172.16.1.81;
拒绝:
deny all;
1.修改网址模块
[root@web01 ~]# vim /etc/nginx/conf.d/autoindex.conf

2.测试
nginx -t
3.重启
systemctl restart nginx
4.日志实时监控
[root@web01 ~]# tail -f /var/log/nginx/access.log
5.解析DNS设置
172.16.1.7	www.game.com

6.网址测试
允许原因
地址 ip 设置成 172.16.1.7 内网
解析作用 DNS 将域名解析成 ip地址 1.域名访问内网 需要通过VPN 因在同一个局域网
2.VPN转换到跳板机,在进行访问网址ip地址
3.访问成功
原因:
网址ip设置了访问权限模块 只允许172.16.1.81 访问
其他拒绝

nginx模块lnmp架构的更多相关文章

  1. day08 Nginx模块

    day08 Nginx模块 lnmp架构 l :Linux n :Nginx m :MySQL p :Python/PHP lnmp架构:是最简单的架构 Nginx中的模块(Python模块):前提是 ...

  2. nginx详解反向代理、负载均衡、LNMP架构上线动态网站(week4_day1_part1)-技术流ken

    nginx介绍 Nginx是俄罗斯人编写的十分轻量级的HTTP服务器,Nginx,它的发音为“engine X”,是一个高性能的HTTP和反向代理服务器,同时也是一个IMAP/POP3/SMTP 代理 ...

  3. lnmp架构、mysql的安装、php的安装、nginx相关

    1.lnmp架构 2.mysql的安装: mysql5.6自动安装脚本: yum install perl-Data-Dumper.x86_64 libaio.x86_64 libaio-devel. ...

  4. Linux(12):期中架构(4)--- 前端部分:HTTP & Nginx & LNMP架构

    HTTP协议概念原理说明 1. 当用户访问一个网站时经历的过程 # ①. 利用DNS服务,将输入的域名解析为相应的IP地址 a 本地主机输入域名后,会查询本地缓存信息和本地hosts b 本地主机会向 ...

  5. LNMP架构介绍、MySQL和PHP安装、Nginx介绍

     6月6日任务  12.1 LNMP架构介绍12.2 MySQL安装12.3/12.4 PHP安装12.5 Nginx介绍 扩展Nginx为什么比Apache Httpd高效:原理篇 http://w ...

  6. nginx详解反向代理,负载均衡,LNMP架构上线动态网站

    1.nginx介绍 nginx.org Nginx是俄罗斯人编写的十分轻量级的HTTP服务器,Nginx,它的发音为“engine X”,是一个高性能的HTTP和反向代理服务器,同时也是一个IMAP/ ...

  7. Linux centosVMware LNMP架构介绍、MySQL安装、PHP安装、Nginx介绍

    一. LNMP架构介绍 和LAMP不同的是,提供web服务的是Nginx 并且php是作为一个独立服务存在的,这个服务叫做php-fpm Nginx直接处理静态请求,动态请求会转发给php-fpm   ...

  8. 09 . Nginx配置LNMP和LNMT架构

    安装LNMP架构 环境清单 list CentOS7.3 proxysql-2.0.12-1-centos7.x86_64.rpm mysql-5.7.23-1.el7.x86_64.rpm-bund ...

  9. nginx详解、反向代理、负载均衡和LNMP架构

    资源池 nginx官方网站:http://nginx.org/ nginx官方文档:http://nginx.org/en/docs/ 本章资源: 点击这里 资源提取码:u2jv 1.nginx简介 ...

随机推荐

  1. 【LeetCode】968. Binary Tree Cameras 解题报告(C++)

    作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn/ 目录 题目描述 题目大意 解题方法 日期 题目地址:https://leetcode.c ...

  2. 湫湫系列故事——消灭兔子(hdu4544)

    湫湫系列故事--消灭兔子 Time Limit: 3000/1000 MS (Java/Others)    Memory Limit: 65535/32768 K (Java/Others)Tota ...

  3. TensorFlow.NET机器学习入门【4】采用神经网络处理分类问题

    上一篇文章我们介绍了通过神经网络来处理一个非线性回归的问题,这次我们将采用神经网络来处理一个多元分类的问题. 这次我们解决这样一个问题:输入一个人的身高和体重的数据,程序判断出这个人的身材状况,一共三 ...

  4. CSS实现鼠标移入时图片的放大效果以及缓慢过渡

    transform:scale()可以实现按比例放大或者缩小功能. transition可以设置动画执行的时间,实现缓慢或者快速的执行动画,效果图如下: 源码: <!DOCTYPE html&g ...

  5. uniapp中拿到base64转blob对象,或base64转bytes字节数组,io操作写入字节流文件bytes

    1. uniAPP中拿到附件的base64如何操作,如word文件 /*** 实现思路:* 通过native.js的io操作创建文件,拿到平台绝对路径* 再通过原生类进行base64解码,拿到字节流b ...

  6. <数据结构>关键路径

    目录 AOV网和AOE网 AOV网 AOE网 定义 与AOV网的转化 AOE网中着重解决的两个问题 1.最长路径问题 2.关键活动问题 总结 最长路径 无正环的图 有向无环图的最短路径 其他情况 关键 ...

  7. 【优雅代码】07-spring下的优秀工具类

    [优雅代码]07-spring下的优秀工具类 欢迎关注b站账号/公众号[六边形战士夏宁],一个要把各项指标拉满的男人.该文章已在github目录收录. 屏幕前的大帅比和大漂亮如果有帮助到你的话请顺手点 ...

  8. go语言生成markdown文档工具

    虽然有go语言的swagger,但是go版本的swagger对代码的侵入比较大,因此抽空实现了基于GO语言生成markdown文档的工具 开源链接地址: https://github.com/w3li ...

  9. Linux 使用 tail 命令查看文件内容

    使用方法: $ tail --help 用法:tail [选项]... [文件]... 以标准输出的形式打印文件的最后10行内容: 如果不指定文件,或者文件为"-",则从标准输入中 ...

  10. Mysql字符串字段判断是否包含某个字符串的方法

    方法一:like SELECT * FROM 表名 WHERE 字段名 like "%字符%"; 方法二:find_in_set() 利用mysql 字符串函数 find_in_s ...