centos 7.6 —— Nginx 配置网页防盗链&&FPM参数优化
一、网页防盗链
(1)防盗链端——服务端配置(192.168.75.134)
1.1 服务端配置DNS服务,域名为 www.ttyy.com
[root@localhost html]# yum -y install bind
[root@localhost html]# vim /etc/named.conf
listen-on port 53 { any; };
allow-query { any; };
[root@localhost html]# vim /etc/named.rfc1912.zones
zone "ttyy.com" IN { type master;
file "ttyy.com.zone";
allow-update { none; };
};
[root@localhost html]# cd /var/named/
[root@localhost named]# cp -p named.localhost ttyy.com.zone
[root@localhost named]# vim ttyy.com.zone
$TTL 1D
@ IN SOA @ rname.invalid. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS @
A 127.0.0.1
www IN A 192.168.75.134
~
[root@localhost named]# systemctl restart named
[root@localhost named]# vim /usr/local/nginx/conf/nginx.conf
server {
listen 192.168.75.134:80;
server_name www.ttyy.com;
[root@localhost named]# systemctl restart nginx.service
1.2 虚拟机win10 验证DNS
浏览器输入 www.ttyy.com
(2)盗链端——服务端配置
2.1安装Apache服务(192.168.75.131)
[root@promote html]# pwd
/var/www/html
[root@promote html]# vim index.html
<html><body><h1> this is web!!!!!!</h1></body></html>
<img src="http://192.168.75.134/xunya.jpg"/>
[root@promote html]# ll
总用量 4
-rw-r--r--. 1 root root 102 8月 10 19:36 index.html
2.2 win10 验证盗链图片成功
(3) 设置主服务端——设置防盗链语句
[root@localhost html]# ll
总用量 172
-rw-r--r--. 1 root root 537 8月 10 15:11 50x.html
-rw-r--r--. 1 root root 77798 8月 11 08:44 error.png
-rw-r--r--. 1 root root 649 8月 11 09:14 index.html
-rw-r--r--. 1 root root 51055 8月 10 18:58 lala.jpg
-rw-r--r--. 1 root root 35605 8月 10 18:54 xunya.jpg
[root@localhost html]# pwd
/usr/local/nginx/html
[root@localhost html]# vim /usr/local/nginx/conf/nginx.conf
location ~*\.(jpg|gif|swf)$ {
valid_referers none blocked *.ttyy.com ttyy.com; //这边筛选的是域名部分,所以防盗链服务端使用ip地址访问也会出现error图片,使用域名www.ttyy.com域名访问即可显示正常图片
if ($invalid_referer){
rewrite ^/ http://www.ttyy.com/error.png; //图片需要提前放到站点目录
}
}
[root@localhost html]# nginx -t
nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful
[root@localhost html]# systemctl restart nginx.service
[root@localhost html]#
2.2 win10 验证盗链失败 实验成功
二、FPM参数优化
- Nginx 的PHP解析功能实现如果是交由FPM处理的,为了提高PHP的处理速度,可对FPM模块进行参数的调整。
(1)首先安装带FPM模块的PHP环境,保证PHP可以正常运行。
(2)FPM进程有两种启动方式,由pm参数指定,分别是static和dynamic,前者将产生固定数据的FPM进程,后者将以动态的方式产生FPM进程。
static 方式可以使用pm.max_children 指定启动的进程数量。dynamic方式的参数则要根据服务器的内存与服务负载进行调整,
[root@localhost conf]# cd /usr/local/php/etc
[root@localhost etc]# ls
pear.conf php-fpm.conf php-fpm.conf.default php-fpm.d
[root@localhost etc]# vim php-fpm.conf
[root@localhost etc]#
dynamic
pm.max_children=20
pm.start.servers=5
pm.min_spare_servers
pm_max_spare_servers