IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 系统运维 -> nginx优化配置与防盗链 -> 正文阅读

[系统运维]nginx优化配置与防盗链

nginx优化配置

隐藏版本号:

?方法二:

? cd /opt/nginx-1.12.0/src/core

[root@localhost nginx]# cd /opt/nginx-1.12.2/src/core
[root@localhost core]# ls
nginx.c           ngx_crc.h    ngx_md5.c              ngx_proxy_protocol.c  ngx_sha1.h
nginx.h           ngx_crypt.c  ngx_md5.h              ngx_proxy_protocol.h  ngx_shmtx.c
ngx_array.c       ngx_crypt.h  ngx_module.c           ngx_queue.c           ngx_shmtx.h
ngx_array.h       ngx_cycle.c  ngx_module.h           ngx_queue.h           ngx_slab.c
ngx_buf.c         ngx_cycle.h  ngx_murmurhash.c       ngx_radix_tree.c      ngx_slab.h
ngx_buf.h         ngx_file.c   ngx_murmurhash.h       ngx_radix_tree.h      ngx_spinlock.c
ngx_conf_file.c   ngx_file.h   ngx_open_file_cache.c  ngx_rbtree.c          ngx_string.c
ngx_conf_file.h   ngx_hash.c   ngx_open_file_cache.h  ngx_rbtree.h          ngx_string.h
ngx_config.h      ngx_hash.h   ngx_output_chain.c     ngx_regex.c           ngx_syslog.c
ngx_connection.c  ngx_inet.c   ngx_palloc.c           ngx_regex.h           ngx_syslog.h
ngx_connection.h  ngx_inet.h   ngx_palloc.h           ngx_resolver.c        ngx_thread_pool.c
ngx_core.h        ngx_list.c   ngx_parse.c            ngx_resolver.h        ngx_thread_pool.h
ngx_cpuinfo.c     ngx_list.h   ngx_parse.h            ngx_rwlock.c          ngx_times.c
ngx_crc32.c       ngx_log.c    ngx_parse_time.c       ngx_rwlock.h          ngx_times.h
ngx_crc32.h       ngx_log.h    ngx_parse_time.h       ngx_sha1.c
[root@localhost core]# vim nginx.h

?注解:里面全是以.c? .h 结尾的文件

?.c代表C语言编写的软件? .h代表头部文件

?隐藏版本信息?

修改完之后,重新编译安装就生效

?修改nginx用户和组

?修改主用户

网页缓存:~代表匹配正则表达式

?

?访问地址:

?日志分割脚本:

?1.通过mv命令将原有日志移动到日志目录中

?2.kill -USR1 < PID> 重新生成日志文件

?3.删除30天之前的日志文件

#!/bin/bash
#des this is logs fenge files
#指定日志放的路径
log="/var/log/nginx"
#定义获取nginx进程的pid文件
pid="/usr/local/nginx/logs/nginx.pid"
#定义变量获取前一天的日期
last=$(date -d "-1 day" +%Y-%m-%d)
#判断目录是否存在,如不存在创建此目录
if [ ! -d $log ]
then
  mkdir -p $log


fi

#移动并重名名日志文件
mv /usr/local/nginx/logs/access.log $log/access.log-$last
mv /usr/local/nginx/logs/error.log $log/error.log-$last

#重建新日志文件,以便后续日志正常写入
kill -USR1 $(cat $pid)
#删除超过30天文件
find $log -mtime +30 | xargs rm -rf

执行脚本,生成日志文件

?有多少ESTABLISHED就有多少并发连接? ? ??

?keepalive(保持连接)

在企业网站中,为了避免同一个客户长时间占用连接,造成资源浪费,可设置相应的连接超时参数,实现控制连接访问时间。可以修改配置文件 nginx.conf,设置 keepalive_timeout超时。

?keepalive? 0; 设置后就相当于连接保持给关闭了,使用短链接。

?短链接:一个tcp连接对应一个http请求请求结束,即断开连接

?keepalive? ?60? 50;? 一个tcp连接可响应多个请求,访问结束后60s断开连接;

?50s? 代表客户端经过50s后,客户端断开tcp连接?

惊群效应:

效应(thundering herd)是指多进程(多线程)在同时阻塞等待同一个事件的时候(休眠状态),如果等待的这个事件发生,那么他就会唤醒等待的所有进程(或者线程),但是最终却只能有一个进程(线程)获得这个时间的“控制权”,对该事件进行处理,而其他进程(线程)获取“控制权”失败,只能重新进入休眠状态,这种现象和性能浪费就叫做效应

?网页压缩:ngx http gzip_module模块

允许Nginx服务器将输出内容在发送客户端之前进行压缩,以节约网站带宽,提升用户的访问体验,默认已经安装。

?路径:

[root@localhost conf]# cd /opt
[root@localhost opt]# cd nginx-1.12.2/
[root@localhost nginx-1.12.2]# cd auto
[root@localhost auto]# ls
cc          feature       headers  install  module   options  stubs    types
define      have          include  lib      modules  os       summary  unix
endianness  have_headers  init     make     nohave   sources  threads
[root@localhost auto]# cat options 

?配置:

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

?http {
?...... 
? ? gzip on;              ? ?#取消注释,开启gzip压缩功能
? ? gzip_min_length 1k; ? ? ?#最小压缩文件大小
? ? gzip_buffers 4 64k; ? ? ?#压缩缓冲区,大小为4个64k缓冲区
? ? gzip_http_version 1.1; ? #压缩版本(默认1.1,前端如果是squid2.5请使用1.0)
? ? gzip_comp_level 6; ? ? ? #压缩比率
? ? gzip_vary on;            #支持前端缓存服务器存储压缩页面
? ? 
? ? #压缩类型,表示哪些网页文档启用压缩功能
? ? gzip_types text/plain text/javascript application/x-javascript text/css text/xml application/xml application/xml+rss image/jpg image/jpeg image/png image/gif application/x-httpd-php application/javascript application/json;
?...... 
?}

浏览器访问测试 ?在Linux系统中,打开火狐浏览器,右击点查看元素 ?选择 网络 ---> 选择 HTML、WS、其他 ?访问 http://www.benet.com ,双击响应消息查看响应头中包含 Content-Encoding: gzip

?配置防盗链

  • 在企业网站服务中,一般都要配置防盗链功能,以避免网站内容被非法盗用,造成经济损失,也避免了不必要的带宽浪费。
  • Nginx 的防盗链功能也非常强大,在默认情况下,只需要进行很简单的配置,即可实现防盗链处理。
http{


      location ~* \.(gif|jpg|jpeg|swf|)$ {
 
            valid_referers none blocked *.benet.com;
                          
            if ( $invalid_referer ){
            
              rewrite ^/ http://www.benet.com/error.png;
           }

       }






}

?盗图网站配置:

[root@localhost html]# cd /var/www/html
[root@localhost html]# ls
index.html
[root@localhost html]# cat index.html 
<html>
<body>
<h1>dao tu gou ke chi   </h1>
<img src="http://www.benet.com/fdl.jpg"/>
</body>

</html>
[root@localhost html]# cat /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.6.141 www.benet.com
192.168.6.133 www.accp.com
[root@localhost html]# 

?在windows10中配置解析映射

?C:/windows/system32/drivers/etc/hosts文件

?

用windows10 访问的盗图网站

?

  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章      下一篇文章      查看所有文章
加:2022-10-08 21:17:28  更:2022-10-08 21:18:02 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/15 6:19:27-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码