【lamp架构】nginx限流、配置(自动索引、缓存、日志轮询与禁用部分记录、目录和文件限制、中文乱码)、重定向、防盗链

【lamp架构】nginx限流、配置(自动索引、缓存、日志轮询与禁用部分记录、目录和文件限制、中文乱码)、重定向、防盗链一 nginx 限流 01 限制并发数 nginx 默认发布目录下 创建 download 文件 并放入大小约为 444K 的图片 当未做任何限制时 物理机下压力测试 ab c 10 n 10 http 172 25 2 1 download vim jpg 压力测试 c 指定并发数 n 指定请求数 限制并发数

大家好,我是讯享网,很高兴认识大家。

一、nginx限流

01_限制并发数

  • nginx默认发布目录下,创建download文件,并放入大小约为444K的图片
    在这里插入图片描述
    讯享网
  • 当未做任何限制时,物理机下压力测试
    ab -c 10 -n 10 http://172.25.2.1/download/vim.jpg
    压力测试,-c指定并发数,-n指定请求数
    在这里插入图片描述
  • 限制并发数
    vim /usr/local/nginx/conf/nginx.conf
 limit_conn_zone $binary_remote_addr zone=addr:10m; location /download/ { 
    limit_conn addr 1; #limit_rate 50k; } 

讯享网

nginx -t
nginx -s reload
在这里插入图片描述

  • 压力测试
    ab -c 10 -n 10 http://172.25.2.1/download/vim.jpg

在这里插入图片描述

  • 查看日志
    cat /usr/local/nginx/logs/access.log
    在这里插入图片描述

02_限制带宽

限制带宽
vim /usr/local/nginx/conf/nginx.conf

讯享网limit_rate 50k; 

nginx -t
nginx -s reload

在这里插入图片描述

  • 压力测试
    ab -c 10 -n 10 http://172.25.2.1/download/vim.jpg

在这里插入图片描述

03_限制单位时间请求数目

vim /usr/local/nginx/conf/nginx.conf

 limit_req_zone $binary_remote_addr zone=one:10m rate=1r/s; limit_req zone=one; limit_req zone=one burst=5 %表示一次传输5个,直到传输完成 limit_req zone=one burst=5 nodelay; %表示一次传输5个,不等待,超时则任务失败 rate=1r/s表示允许相同标识的客户端的访问频次,这里限制的是每秒1

在这里插入图片描述

ab -c 1 -n 10 http://172.25.0.1/download/vim.jpg
在这里插入图片描述

讯享网limit_req zone=one burst=5 

在这里插入图片描述

limit_req zone=one burst=5 nodelay 

在这里插入图片描述

二、nginx配置管理

01_自动索引

下载方便

  • vim /usr/local/nginx/conf/nginx.conf
讯享网自动索引可以自动索引到相关目录,方便下载相关文件: autoindex on; 

在这里插入图片描述

  • 访问172.25.2.1/download,可以直接索引到该目录中的文件
    在这里插入图片描述

02_expire缓存配置

缓存可以降低网站带宽,加速用户访问

  • vim /usr/local/nginx/conf/nginx.conf
 location ~ .*\.(gif|jpg|png)$ { 
    expires 365d;
        root html; } 

在这里插入图片描述测试
curl -I 172.25.2.1/download/vim.jpg
在这里插入图片描述

03_日志轮询

cd /opt/
vim nginxlog.sh

讯享网#!/bin/bash cd /usr/local/nginx/logs && mv access.log access_$(date +%F -d -1day).log %日志文件重命名 kill -USR1 `cat /usr/local/nginx/logs/nginx.pid` %重载日志 

在这里插入图片描述

04_禁用不必要的日志记录

  • vim /usr/local/nginx/conf/nginx.conf
access_log off; 

在这里插入图片描述
在这里插入图片描述

  • 再次访问172.25.2.1/download/

在这里插入图片描述

  • 日志不会记录

在这里插入图片描述

05_站点目录和文件的限制

  • 未加限制之前
    在这里插入图片描述
  • 增加限制
    vim /usr/local/nginx/conf/nginx.conf
讯享网 deny all; 

在这里插入图片描述
在这里插入图片描述

  • 允许某些用户访问
    vim /usr/local/nginx/conf/nginx.conf

在这里插入图片描述

  • 访问172.25.2.1/download/
    在这里插入图片描述

06_中文乱码

  • 编辑nginx默认html测试页面,使其产生中文乱码
    vim /usr/local/nginx/html/index.html
    在这里插入图片描述
  • 出现乱码情况
    在这里插入图片描述
  • 解决中文乱码
    vim /usr/local/nginx/conf/nginx.conf
    在这里插入图片描述
  • 访问172.25.2.1,乱码问题解决

在这里插入图片描述

三、nginx重定向

01_防止域名恶意解析到服务器IP

vim /usr/local/nginx/conf/nginx.conf

return 500; 

在这里插入图片描述
访问172.25.2.1
在这里插入图片描述

02_永久重定向

  • vim /usr/local/nginx/conf/nginx.conf
讯享网rewrite ^(.*) http://www.westos.org permanent; 

在这里插入图片描述

  • 访问测试 172.25.2.1,重定向
    在这里插入图片描述
    在这里插入图片描述

03_80重定向443

  • vim /usr/local/nginx/conf/nginx.conf
    在这里插入图片描述
    在这里插入图片描述
    网页访问172.25.2.1,已经重定向到443
    在这里插入图片描述

04_同一台主机,不同域名之间的重定向

方式1

  • 编辑配置文件

mkdir /bbs
echo bbs.linux.org > /bbs/index.html
vim /usr/local/nginx/conf/nginx.conf

 rewrite ^/bbs$ http://bbs.linux.org permanent; rewrite ^/bbs/(.*)$ http://bbs.linux.org/$1 permanent; server { 
    listen 80; server_name bbs.linux.org; location / { 
    root /bbs; index index.html; } } 

在这里插入图片描述

  • 测试
    在这里插入图片描述
    在这里插入图片描述

方式2
在这里插入图片描述

vim /usr/local/nginx/conf/nginx.conf

讯享网if ($host = "bbs.linux.org"){ 
    rewrite ^/(.*)$ http://www.linux.org/bbs/$1 permanent; } 

在这里插入图片描述
访问测试
在这里插入图片描述

四、防盗链

盗链:在自己的页面中嵌入别人的链接,显示在自己的页面上,以达到盗链的目的,。

  • 制作盗链
    选取server2主机,在其apache的默认发布目录下编写盗链文件,盗取server1的页面
    vim /var/www/html/index.html
<body> <img src="http://www.westos.org/download/vim.jpg"/> </body> 
  • 在物理机下 vim /etc/hosts
讯享网172.25.2.2 server2 daolian.westos.org 
  • 当访问172.25.2.2或者daolian.westos.org时,直接链接到www.westos.org/download/vim.jpg,显示其下的内容
    在这里插入图片描述

防盗链,防止盗链消耗原站的流量
方法一:返回403

vim /usr/local/nginx/conf/nginx.conf

location ~ \.(jpg|png)$ { 
    valid_referers none blocked www.westos.org; if ($invalid_referer) { 
    return 403; #rewrite ^/ http://172.25.2.3/daolian.jpg; } } 

在这里插入图片描述

  • 再次访问172.25.2.2或者daolian.westos.org

在这里插入图片描述
方法二:重定向盗链

  • 在server3的apache发布目录下,放daolian.jpg

在这里插入图片描述

  • vim /usr/local/nginx/conf/nginx.conf
讯享网 location ~ \.(jpg|png)$ { 
    valid_referers none blocked www.westos.org; if ($invalid_referer) { 
    #return 403; rewrite ^/ http://172.25.2.3/daolian.jpg; } } 

在这里插入图片描述

  • 再次访问172.25.2.2或者daolian.westos.org
    在这里插入图片描述
  • www.westos.org/download/vim.jpg可以正常访问

在这里插入图片描述

小讯
上一篇 2025-02-09 16:58
下一篇 2025-03-08 19:06

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/67876.html