防盗链

Nginx优化与防盗链

时间秒杀一切 提交于 2019-12-30 22:52:18
一、版本号 在生产环境中,需要隐藏Nginx的版本号,以避安全漏洞的泄露 查看方法: 使用 fiddler工具在Windows客户端查看nginx版本号 在Centos系统中使用"curl -l 网址" 命令查看 隐藏版本号 1、查看版本号 [root@localhost html]# curl -I http://192.168.232.159/ 查看版本号 HTTP/1.1 200 OK Server: nginx/1.12.2 版本号 Date: Mon, 30 Dec 2019 08:43:23 GMT Content-Type: text/html Content-Length: 651 Last-Modified: Mon, 30 Dec 2019 08:22:02 GMT Connection: keep-alive ETag: "5e09b3aa-28b" Accept-Ranges: bytes 2、进入:vim /usr/local/nginx/conf/nginx.conf http { 下面插入 server_tokens off; 3、查看版本号,已经隐藏 [root@localhost html]# curl -I http://192.168.232.159/ HTTP/1.1 200 OK Server: nginx 已经隐藏版本号 Date:

MongoDB入门

给你一囗甜甜゛ 提交于 2019-12-30 04:22:33
1.什么是NoSQL Nosql的全称是Not Only Sql 这个概念早起就有人提出,而我们常用的都是关系型数据库。就像我们常用mysql,sqlserver一样,这些数据库一般用来存储重要信息,应对普通的业务是没有问题的。但是,随着互联网的高速发展,传统的关系型数据库在应付超大规模,超大流量以及高并发的时候力不从心。而就在这个时候,Nosql得到的告诉的发展。 2.为什么要使用NoSQL 单机 MySQL 的美好时代 在90年代,一个网站的访问量一般都不大,用单个数据库完全可以轻松应付。 在那个时候,更多的都是静态网页,动态交互类型的网站不多 [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-yHjk2K6A-1577542875039)(D:\youruike\MongoDB\assets\1575617897290.png)] 上述架构下,我们来看看数据存储的瓶颈是什么? DAL : Data Access Layer(数据访问层 – Hibernate,MyBatis) 数据量的总大小一个机器放不下时 数据的索引(B+ Tree)一个机器的内存放不下时 访问量(读写混合)一个实例不能承受 如果满足了上述1 or 3个时,只能对数据库的整体架构进行重构。 Memcached(缓存)+MySQL+垂直拆分 后来,随着访问量的上升

Numpy的基础知识

我怕爱的太早我们不能终老 提交于 2019-12-26 01:29:05
文章目录 Numerical Python介绍 基础数据结构ndarray数组 为什么引入ndarray数组 ndarray数组和list列表分别完成对每个元素增加1的计算 ndarray数组和list列表分别完成相加计算 如何创建ndarray数组 查看ndarray数组的属性 改变ndarray数组的数据类型和形状 ndarray数组的基本运算 标量和ndarray数组之间的运算 两个ndarray数组之间的运算 ndarray数组的索引和切片 ndarray数组的统计运算 随机数np.random 创建随机ndarray数组 设置随机数种子 随机打乱ndarray数组顺序 随机选取元素 线性代数 Numpy保存和导入文件 Numpy应用举例 Numpy应用举例——计算激活函数 Numpy应用举例——图像翻转和裁剪 课程作业 1 使用numpy计算tanh激活函数 2 统计随机生成矩阵中有多少个元素大于0 Numerical Python介绍 Numpy是Numerical Python的简称,是Python中高性能科学计算和数据分析的基础包。Numpy提供了一个多维数组类型ndarray,它具有矢量算术运算和复杂广播的能力,可以实现快速的计算并且能节省存储空间。在使用Python调用飞桨API完成深度学习任务的过程中,通常会使用Numpy实现数据预处理和一些模型指标的计算

配置Nginx的防盗链

爷,独闯天下 提交于 2019-12-25 04:42:52
实验环境 一台最小化安装的CentOS 7.3虚拟机 配置:1核心/512MB nginx版本1.12.2 一、配置盗链网站 1.启动一台 nginx 虚拟机,配置两个网站 vim /etc/nginx/conf.d/vhosts.conf 添加以下内容 server { listen 80; server_name site1.test.com; root /var/wwwroot/site1; index index.html; location / { } } server { listen 80; server_name site2.test.com; root /var/wwwroot/site2; index index.html; location / { } } 2.在宿主机编辑 C:\Windows\System32\drivers\etc\hosts 文件 192.168.204.11 site1.test.com 192.168.204.11 site2.test.com 3.创建网站根目录 mkdir /var/wwwroot cd /var/wwwroot mkdir site1 mkdir site2 echo -e "<h1>site1</h1><img src='1.jpg'>" >> site1/index.html echo -e "<h1

解决图片的防盗链导致图片显示不出来(适合所有的防盗链图片)

让人想犯罪 __ 提交于 2019-12-25 04:42:43
图片的防盗链 因为之前使用了豆瓣的图书 API 用着的时候web 系统突然发现所有的图片都访问不了、然后谷歌一查原来豆瓣采取了防盗链。 问题很简单,就是我希望在自己的页面里用 \<img src=”xxxx” \/> 来引用其他网站的一张图片,但是他的网站设置了防盗链的策略,会在后台判断请求的Referrer属性是不是来自于一个非本域名的网站,如果来源不是本域名就返回 403 forbidden。我的目的就是用最方便的方法使得我的页面能够不受他的防盗链策略的影响。 解决的方案 1.使用后台的预下载(把图片下载下来放到服务器下) 缺点: 占用服务器的空间,访问速度没有豆瓣提供的稳点。有些网站是静态的如 hexo 就无法实现。 2.第三方代理 缺点: 不稳点,第三方代理可能在国内访问不稳定,在国内没有好的推荐。也可以自己做一个代理,之前有人用 GO 做过一个。 下面有一个,url 后面填上豆瓣 Api 返回的图片地址 \<img src=”https://images.weserv.nl/?url=https://img3.doubanio.com/view/photo/s_ratio_poster/public/p2544866651.jpg" \/> 3.还有一种比较友好和奢侈的,上传 CDN 调用 CDN 的地址, 缺点: 有点奢侈,因为所有图片都存到 CND 占用大量空间

nginx防盗链配置

瘦欲@ 提交于 2019-12-25 04:42:20
Ps:防盗链的意义就是保证自己的版权,不免网站的流量流失,为他人做嫁衣。下面是网上看到的三种方法: 修改 /usr/local/nginx/conf/nginx.conf 这个配置文件。 找到 location ~ .*.(gif|jpg|jpeg|png|bmp|swf)$ { expires 30d; } 修改成如下代码: location ~ .*.(gif|jpg|jpeg|png|bmp|swf)$ { valid_referers none blocked *.fyunw.com fyunw.com; if($invalid_referer) { rewrite ^/ http://www.fyunw.com/404.jpg; #return404; } expires 30d; } 代码详解: 第一行: location ~ .*.(gif|jpg|jpeg|png|bmp|swf)$ 其中“gif|jpg|jpeg|png|bmp|swf”设置防盗链文件类型,自行修改,每个后缀用“|”符号分开! 第三行:valid_referers none blocked *.fyunw.com fyunw.com; 就是白名单,允许文件链出的域名白名单,自行修改成您的域名!*.fyunw.com这个指的是子域名,域名与域名之间使用空格隔开! 第五行:rewrite ^/

java数据结构

无人久伴 提交于 2019-12-24 04:46:43
第一章 数据结构 2.1 数据结构有什么用? 当你用着java里面的容器类很爽的时候,你有没有想过,怎么ArrayList就像一个无限扩充的数组,也好像链表之类的。好用吗?好用,这就是数据结构的用处,只不过你在不知不觉中使用了。 现实世界的存储,我们使用的工具和建模。每种数据结构有自己的优点和缺点,想想如果Google的数据用的是数组的存储,我们还能方便地查询到所需要的数据吗?而算法,在这么多的数据中如何做到最快的插入,查找,删除,也是在追求更快。 我们java是面向对象的语言,就好似自动档轿车,C语言好似手动档吉普。数据结构呢?是变速箱的工作原理。你完全可以不知道变速箱怎样工作,就把自动档的车子从 A点 开到 B点,而且未必就比懂得的人慢。写程序这件事,和开车一样,经验可以起到很大作用,但如果你不知道底层是怎么工作的,就永远只能开车,既不会修车,也不能造车。当然了,数据结构内容比较多,细细的学起来也是相对费功夫的,不可能达到一蹴而就。我们将常见的数据结构:堆栈、队列、数组、链表和红黑树 这几种给大家介绍一下,作为数据结构的入门,了解一下它们的特点即可。 [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-SDTDwAvC-1577090514597)(img\数据结构比喻.png)] 2.2 常见的数据结构 数据存储的常用结构有:栈、队列、数组

Tomcat&Web结构和Servlet入门

走远了吗. 提交于 2019-12-21 09:02:59
Tomcat&Web结构和Servlet入门 B/S与C/S B/S (Browser/Server):浏览器服务器模式 C/S (Client/Server):客户端服务端模式 动态网页与静态网页 静态网页 一旦页面写好之后,内容就不会改变,没有和后台程序交互 静态web资源开发技术: html 动态网页 一旦页面写好之后,内容会随着不同的时间点不停的变化和后台程序有交互 动态web资源开发技术:JSP/Servlet、ASP、PHP Tomcat服务器 Java语言开发,称之Servlet容器,Tomcat的默认端口是8080 特点 1.服务器自己负责管理Servlet 2.拿到配置文件完全限定名 3.根据需求去设计Servlet的代码 4.JavaEE — Servlet,Java提供的一个标准[API] (三)启动 1)方法一: D:\Java\tomcat\apache-tomcat-8.0.41\bin\startup.bat 2)方法二: 通过软件打开[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-hlqqUHkQ-1576852745262)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\1571811605138.png)]但是必须安装服务 打开cmd

Nginx图片防盗链【实战】

眉间皱痕 提交于 2019-12-20 23:46:03
访问我的博客 前言 博主目前在一家原创小说网站公司工作,由于站内的作品全部是原创,于是乎不可避免地会被一些盗版网站爬取盗版,对于防盗版一直没有很好的对策,让公司很是苦恼。 最近去一些盗版网站上搜索我们网站作品时,发现他们所用的封面图片的来源是我们网站的地址,即所谓的盗链,这对于我们网站服务器的带宽是一种损失,因此需要采取对应的手段应对。 环境准备 这里我使用两台虚拟机 虚拟机的快速安装可以参考我另外一篇博文 CentOS快速安装 服务器 A:192.168.200.130 服务器 B:192.168.200.131 Nginx 安装 参考博文 Nginx缓存配置 的 Nginx 环境搭建部分。 Nginx 防盗链设置 一、配置 Nginx 的防盗链 # 修改 nginx.conf 配置文件 vim /usr/local/nginx/conf/nginx.conf # 添加 server 节点 server { listen 80; server_name www.vcmq.com; #access_log logs/host.access.log main; location ~* \.(jpg|png|gif)$ { root /home/resources; valid_referers none server_names *.test1.com ~\.test2\.; if

Apache优化之防盗链和隐藏版本号

家住魔仙堡 提交于 2019-12-20 05:15:13
什么是防盗链 “盗链”的定义是:此内容不在自己服务器上,而通过技术手段,绕过别人放广告有利益的最终页,直接在自己的有广告有利益的页面上向最终用户提供此内容。 常常是一些名不见经传的小网站来盗取一些有实力的大网站的地址(比如一些音乐、图片、软件的下载地址)然后放置在自己的网站中,通过这种方法盗取大网站的空间和流量。 实验 一、安装bind包配置DNS域名解析服务 有关dns的详细内容查看: https://blog.51cto.com/14557905/2453070 1.修改配置文件 2.开启服务,关闭防火墙 二、手工编译安装Apache 1.详细编译过程可查看: https://blog.51cto.com/14557905/2459413 //手工编译安装Apache tar zxvf apr-1.6.2.tar.gz -C /opt tar zxvf apr-util-1.6.0.tar.gz -C /opt tar jxvf httpd-2.4.29.tar.bz2 -C /opt cd /opt mv apr-1.6.2 httpd-2.4.29/srclib/apr mv apr-util-1.6.0 httpd-2.4.29/srclib/apr-util //安装软件环境 yum -y install \ gcc \ gcc-c++ \ make \ pcre