配置nginx防盗链和HTTPS

一、配置nginx图片防盗链
步骤1:配置盗链网站
1)启动nginx容器,设置端口映射,并进入容器

docker run -d --privileged -p 80:80 nginx /usr/sbin/init

2)在nginx容器中准备两个网站,配置文件截图

server {
listen 80;
server_name site1.test.com;
root /var/www/html/site1;
index index.html;
}
server {
listen 80;
server_name site2.test.com;
root /var/www/html/site2;
index index.html;
}

3)在主机编辑hosts文件,并使用ping命令检查
虚拟机的IP地址 site1.test.com
虚拟机的IP地址 site2.test.com

4)创建/var/www/html/site1/index.html,展示自己的图片

<h1>welcome to site1</h1>
<img src=”1.jpg”>

5)创建/var/www/html/site2/index.html,盗用site1的图片

<h1>welcome to site2</h1>
<img src=”http://site1.test.com/1.jpg”&gt;

6)在主机浏览器访问site1.test.com

7)在主机浏览器访问site2.test.com

步骤2:配置site1.test.com防盗链
1)在nginx容器中编辑/etc/nginx/conf.d/default.conf文件,配置防盗链,截图
#配置两台虚拟主机

server {
listen 80;
server_name site1.test.com;
root /var/www/site1;
location / {

    index  index.html index.htm;
}
location ~  \.(jpg|png|gif)$ {
  valid_referers  site1.test.com;
  if ($invalid_referer) {
    return 403;
  }

}
}

server {
listen 80;
server_name site2.test.com;
location / {
root /var/www/site2;
index index.html index.htm;
}

2)在主机编辑hosts文件,并使用ping命令检查
第一台虚拟机nginx的IP地址 site1.test.com
第一台虚拟机nginx的IP地址 site2.test.com

3)在主机使用浏览器访问site1.test.com,截图

在主机使用浏览器访问site2.test.com

二、配置nginx的HTTPS网站
步骤1:颁发网站认证证书

1)在nginx容器中检查系统安装了openssl

2)建立/etc/nginx/ssl目录,并生成服务器RSA私钥

查看server.key的内容

4)生成服务器CSR(服务器的公钥)证书请求文件,注意站点名称要一致

5)查看证书请求文件的内容

6)生成服务器认证证书

7)查看服务器证书

步骤2:配置HTTPS网站
1)在主机编辑hosts文件,并使用ping命令检查
虚拟机的IP地址 www.test.com

2)编辑/etc/nginx/conf.d/default.conf文件,配置HTTPS站点,截图

server {
listen 443;
server_name www.test.com;
root /var/www/html;
ssl on;
ssl_certificate /etc/nginx/ssl/server.crt;
ssl_certificate_key /etc/nginx/ssl/server.key;
location / {
index index.html;
}
}

3)编辑 /var/www/html/index.html,重载nginx

<h1>this is https site!!</h1>

4)在主机使用浏览器访问 https://www.test.com

5)在浏览器中查看网站证书

原文地址:https://blog.51cto.com/13670314/2397613

时间: 2024-11-07 12:24:51

配置nginx防盗链和HTTPS的相关文章

配置 Nginx 防盗链

什么是防盗链:简单地说,就是某些不法网站未经许可,通过在其自身网站程序里非法调用其他网站的资源,然后在自己的网站上显示这些调用的资源,使得被盗链的那一端消耗带宽资源 (1) 根据 HTTP referer 实现防盗链:referer 是 HTTP 的一个首部字段,用于指明用户请求的 URL 是从哪个页面通过链接跳转过来的(2) 根据 cookie 实现防盗链:cookie 是服务器贴在客户端身上的 "标签" ,服务器用它来识别客户端 根据 referer 配置防盗链: location

Linux centos VMware Nginx防盗链、Nginx访问控制、Nginx解析php相关配置、Nginx代理

一.Nginx防盗链 配置如下,可以和上面的配置结合起来 location ~* ^.+\.(gif|jpg|png|swf|flv|rar|zip|doc|pdf|gz|bz2|jpeg|bmp|xls)$ { expires 7d; valid_referers none blocked server_names *.test.com ; if ($invalid_referer) { return 403; } access_log off; } 二.Nginx访问控制 需求:访问/adm

Nginx防盗链配置实例——从盗链模拟到防盗链设置流程细解

Nginx防盗链设置 ? 对于图片来说,A网站,如果想使用B网站的图片,可以直接写上B网站图片的链接地址,或者将B网站的图片通过右键另存为的方式下载到本地,然后在页面上使用.如果B网站不想A网站这么干了,那么B网站可以采取防盗链的措施来干这个工作,结果就是,A网站想请求所需要的资源,通过url的方式,获取的可能不是原来的图片了,出现404或者别的图片替代了.如果通过浏览器直接打开图片url,那么仍然有可能显示404,这就是防盗链. ? 下面我们先进行盗链的操作过程:就是如何做盗链网站--盗取别人

Apache和Nginx防盗链的几种配置方法

要实现防盗链,我们就必须先理解盗链的实现原理,提到防盗链的实现原理就不得不从HTTP协议说起,在HTTP协议中,有一个表头字段叫 referer,采用URL的格式来表示从哪儿链接到当前的网页或文件.换句话说,通过referer,网站可以检测目标网页访问的来源网页,如果是资源 文件,则可以跟踪到显示它的网页地址.有了referer跟踪来源就好办了,这时就可以通过技术手段来进行处理,一旦检测到来源不是本站即进行阻止或者返 回指定的页面. Nginx防盗链的配置 1.nginx针对文件类型的防盗链配置

nginx配置图片防盗链

location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)${ expires 30d; access_log off; valid_referers none blocked *.lee.com *.xing.com ; if ($invalid_referer){ rewrite ^/ http://invalid.com/images/invalid.png; #return 403; } } expires : 图片的客户端浏览器的缓存时间. access_log

Nginx防盗链、Nginx访问控制、Nginx解析php相关配置、Nginx代理

Nginx防盗链 1.[[email protected] test.com]# vi /usr/local/nginx/conf/vhost/test.com.conf #+表示1或者多个,+前面的字符 location ~* ^.+\.(gif|jpg|png|swf|flv|rar|zip|doc|pdf|gz|bz2|jpeg|bmp|xls)$ { expires 7d; valid_referers none blocked server_names  *.test.com ; #定

LNMP(nginx防盗链,访问控制,解析php相关配置,Nginx代理,常见502问题)

一.nginx防盗链 nginx防盗链: [[email protected] ~]# vim /usr/local/nginx/conf/vhost/test.com.conf   添加以下内容 location ~* ^.+\.(gif|jpg|png|swf|flv|rar|zip|doc|pdf|gz|bz2|jpeg|bmp|xls)$ { expires 7d; valid_referers none blocked server_names  *.test.com ;      

Nginx防盗链 Nginx访问控制 Nginx解析php相关配置 Nginx代理

12.13 Nginx防盗链cd /usr/local/nginx/conf/vhostvi test.com.conf将以上内容复制到下图位置测试,成功前提data/wwwroot/test.com目录下要有1.gif12.14 Nginx访问控制cd /usr/local/nginx/conf/vhostvi test.com.confFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=" alt="Nginx

2018-3-1512周4次课 Nginx防盗链、访问控制、配置PHP解析、代理

12.13 Nginx防盗链 [[email protected] test.com]# vim /usr/local/nginx/conf/vhost/test.com.conf ~* 表示不区分大小写 白名单 *.test.com,如果不是白名单,则返回403 [[email protected] test.com]# curl -e "http://www.baidu.com"-x127.0.0.1:80 test.com/1.gif -I HTTP/1.1 403 Forbid