一, 配置 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">
- http://site1.test.com/1.jpg”> ;
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) 在浏览器中查看网站证书
来源: http://www.bubuko.com/infodetail-3066582.html