首页 > 其他分享 >架构师之路-学渣到学霸历程-41

架构师之路-学渣到学霸历程-41

时间:2024-11-04 22:51:58浏览次数:3  
标签:Linux2 autoindex 学霸 html 41 nginx 学渣 模块 root

Nginx的常用模块说明

今晚继续分享nginx的常用模块;最后分享多三个;
实验出真知,努力才有结果,让我们都看看这个模块的是怎么使用的;

1、stub_status模块讲解

这个是状态查看模块,这个模块是可以直接输出nginx的基本状态信息

语法:

格式:	stub_status;
作用范围:server	location

实验配置如下:

#修改配置文件
[root@Linux2 nginx]# vim conf/nginx.conf
..............
        location = /status {
                stub_status;
                allow   192.168.75.73;
                allow   192.168.75.1;
                deny all;
        }

#73客户机直接访问;
[root@Linux3 ~]# curl 192.168.75.72/status
Active connections: 1 
server accepts handled requests
 31 31 27 
Reading: 0 Writing: 1 Waiting: 0 

#信息输出说明:
Active connections:	当前状态,活动状态的连接数
accepts:			统计总值,已经接受的客户端请求的总数
handled:			统计总值,已经处理完成的客户端请求的总数
requests:			统计总值,客户端发来的总的请求数
Reading:			当前状态,正在读取客户端请求报文首部的连接的连接数
Writing:			当前状态,正在向客户端发送响应报文过程中的连接数
Waiting:			当前状态,正在等待客户端发出请求的空闲连接数
2、referer模块讲解

该模块可以进行一个防盗链设置

盗链的含义是网站内容本身不在自己公司的服务器上,而通过技术手段,直接调用其他公司的服务器网站数据,而向最终用户提供此内容。

语法:

Syntax: valid_referers none | blocked | server_names |
string ...;
Default: —
Context: server, location

5.3.1、防盗链设置实验

在72服务器上面配置nginx的防盗链:

#修改配置文件
[root@Linux2 ~]# vim conf/nginx.conf
		#新增加一下内容:
........
        location ~* \.(gif|jpg|png|swf|flv)$ {
                valid_referers none blocked *.liangjiawei.net;
                root    /data/html/;
                if ($invalid_referer) {
                        return 403;
                        }
                }
               
#选项参数说明
valid_referers 表示合法的referers设置
none: 表示没有referers,直接通过浏览器或者其他工具访问。
blocked: 表示有referers,但是被代理服务器或者防火墙隐藏;
*.liangjiawei.net: 表示通过*.jfedu.net访问的referers,*表示任意host主机。

#这个是判断,如果有违规的访问就会访问403;
                if ($invalid_referer) {
                        return 403;
                        }
#这个是代表以什么什么结尾
	location ~* \.(gif|jpg|png|swf|flv)$    
  • 准备测试资源
#查找一下linux下的.jpg结尾的资源
[root@Linux2 ~]# find / -name "*.jpg"
/root/mysql-5.5.60/libmysqld/examples/builder-sample/snapshot.jpg
.......

#随便复制一张到html文件中
[root@Linux2 nginx]# cp /usr/share/backgrounds/day.jpg  html/

准备另外一台服务器,准备引用这台服务器的资源

  • 另外一台服务器也要配置nginx
  • 也需要引用72服务器的night.jpg图片
#直接修改73服务nginx的主页文件
[root@Linux2 ~]# > /usr/local/nginx/html/index.html 
[root@Linux2 ~]# vim /usr/local/nginx/html/index.html 
<html>
<h1>welcome to liangjiawei.net<h1>
<img src="http://192.168.75.72/night.jpg"
</html>
#最后进行一个验证

验证:

  • 本地浏览器输入:192.168.75.72/day.jpg

  • 本地浏览器输入:192.168.75.73
    • 看到图裂了,代表实验成功

3、autoindex模块说明

nginx默认的输出页面是不允许列出整个目录的内容的;

如果想要列出内容需要添加autoindex模块

默认的输出是:

[root@Linux3 html]# curl 192.168.75.72
this is liangjiawei-web-主页

如果开启了autoindex模块

  • 原来在html的index这个文件需要移走
#编写配置文件
[root@Linux2 ~]# vim conf/nginx.conf
........
        location / {
            root   html;
           # index  index.html index.htm;
                autoindex on;
        }
..........

#重载配置文件,并且验证
[root@Linux2 ~]# nginx -s reload

#创建数据
[root@Linux2 ~]# mv html/index.html  /tmp/
[root@Linux2 ~]# touch html/{a..c}.txt

autoindex模块的其他显示

# 开启目录访问权限
autoindex on;
# 以人类易懂的方式显示文件大小
autoindex_exact_size off;
# 文件时间设置为本地时间
autoindex_localtime on;

分享环节:

hi,亲爱的朋友们:

  • 感谢你们耐心完这个笔记,如果笔记中出现的一些软件包、资源找不到的可以直接留言&私聊,我看见了就回复;
  • 资源免费共享;有需要滴滴,(仅仅是我有的)

我的坚持初衷:

标签:Linux2,autoindex,学霸,html,41,nginx,学渣,模块,root
From: https://blog.csdn.net/Liang_GaRy/article/details/143496114

相关文章

  • 代码随想录算法训练营day34 day36| 卡码网46题.01背包 416.分割等和子集 1049. 最后
    学习资料:https://programmercarl.com/背包理论基础01背包-1.html动态规划01背包问题学习记录:卡码网46题.01背包点击查看代码##二维背包解法#n,bagweight=map(int,input().split())#weight=list(map(int,input().split()))#value=list(map(int,input().sp......
  • 20241101
    T1美丽的序列dp中记录每个数上一次出现位置和当前位置的差,和\(7\)(或这个数)取\(\min\)。状态数很少,直接做即可。代码#include<iostream>#include<unordered_map>#include<vector>#include<map>usingnamespacestd;constintP=1000000007;inlinevoidMadd(......
  • 20241102
    T1路径注意到颜色出现的顺序并不重要,于是考虑状压,设\(f_{x,S}\)表示从\(x\)开始,经过的颜色集合为\(S\)的方案数。外层枚举路径上经过了几条路径,然后枚举点转移即可。代码#include<iostream>#defineintlonglongusingnamespacestd;intn,m,K;intclr[3000......
  • C++程序设计笔记:终止程序函数abort与exit 20241104
    在C++中,abort()和exit()都是用来终止程序执行的函数,但它们的用途和行为有所不同。abort()函数abort()函数是定义在<cstdlib>或<stdlib.h>头文件中的,它用于异常终止程序。当调用abort()时,程序会立即停止执行,并且会进行堆栈展开(unwind),以调用所有已注册的析构函数和清理......
  • 41. 缺失的第一个正数(难)
    目录题目法一、集合法二、桶排:把nums数组里面的元素放到对应位置上题目给你一个未排序的整数数组nums,请你找出其中没有出现的最小的正整数。请你实现时间复杂度为O(n)并且只使用常数级别额外空间的解决方案。示例1:输入:nums=[1,2,0]输出:3解释:范围[1,2]中的数字都......
  • # 学期(如2024-2025-1) 学号(如:20241402) 《计算机基础与程序设计》第七周学习总结
    学期(如2024-2025-1)学号(如:20241402)《计算机基础与程序设计》第七周学习总结作业信息这个作业属于哪个课程<班级的链接>(如2024-2025-1-计算机基础与程序设计)这个作业要求在哪里<作业要求的链接>(如2024-2025-1计算机基础与程序设计第一周作业)这个作业的目标<写上......
  • 学期 2024-2025-1 学号 20241403 《计算机基础与程序设计》第六周学习总结
    学期(如2024-2025-1)学号(如:20241403)《计算机基础与程序设计》第六周学习总结作业信息这个作业属于哪个课程<班级的链接>(如2024-2025-1-计算机基础与程序设计)这个作业要求在哪里<作业要求的链接>(如2024-2025-1计算机基础与程序设计第一周作业)这个作业的目标Polya......
  • 2024-2025-1 20241411王思棋计算机基础与程序设计第6周学习总结
    |这个作业属于哪个课程|https://edu.cnblogs.com/campus/besti/2024-2025-1-CFAP||-- |-- ||这个作业要求在哪里|https://www.cnblogs.com/rocedu/p/9577842.html#WEEK06||这个作业的目标|Polya如何解决问题、简单类型与组合类型、复合数据结构、查找与排序算法、算法复杂......
  • 2024-2025-1 20241428张雄一《计算机基础与程序设计》第六周工作总结
    学期(如2024-2025-1)学号(如:20241428)《计算机基础与程序设计》第6周学习总结作业信息这个作业属于哪个课程<班级的链接>(如2024-2025-1-计算机基础与程序设计)这个作业的目标<写上具体方面>作业正文https://i.cnblogs.com/posts/edit教材学习内容总结时间复杂度......
  • 2024-2025-1 20241304 《计算机基础与程序设计》第6周学习总结
    2024-2025-120241304《计算机基础与程序设计》第6周学习总结作业信息|这个作业属于哪个课程|<[2024-2025-1-计算机基础与程序设计](https://www.cnblogs.com/rocedu/p/9577842.html#WEEK05)|>|-- |-- ||这个作业要求在哪里|<作业要求的链接>(如2024-2025-1计算机基础与程序设......