vi /usr/local/nginx/conf/nginx.conf
systemctl restart nginx
curl -I http://127.0.0.1
cd /opt/nginx-1.15.9
./configure --prefix=/usr/local/nginx --user=nginx --group=nginx --with-http_stub_status_module
make && make install
systemctl restart nginx
说明:
1.之前咱们nginx服务搭建的时候创建了程序用户nginx;
2.编译安装的时候咱们也已经指定了;
cd /opt/nginx-1.15.9
./configure \
--prefix=/usr/local/nginx \
--user=nginx \
--group=nginx \
--with-http_stub_status_module
make && make install
说明:
--user=nginx \ #指定用户
--group=nginx \ #指定组账户
vi /usr/local/nginx/conf/nginx.conf
systemctl restart nginx
ps aux|grep nginx #查看进程
说明:以图片缓存为例
vi /usr/local/nginx/conf/nginx.conf
1.shell脚本:
vi /opt/fenge.sh
#!/bin/bash
# Filename: fenge.sh
d=$(date -d "-1 day" "+%Y%m%d")
logs_path="/var/log/nginx"
pid_path="/usr/local/nginx/logs/nginx.pid"
[ -d $logs_path ] || mkdir -p $logs_path
mv /usr/local/nginx/logs/access.log ${
logs_path}/test.com-access.log-$d
kill -USR1 $(cat $pid_path)
find $logs_path -mtime +30 |xargs rm -rf
chmod +x /opt/fenge.sh
2.在计划性任务内添加任务
crontab -e
30 1 * * * /opt/fenge.sh
最好重启下计划任务
systemctl restart crond
systemctl enable crond
vi /usr/local/nginx/conf/nginx.conf
说明:
(当前配置是双核双线程的)
cat /proc/cpuinfo |grep -c physical
8
vi /usr/local/nginx/conf/nginx.conf
worker_processes 8;
systemtl restart nginx
在gzip on;去掉#号,下添加:
gzip on;
gzip_buffers 4 64k;
gzip_http_version 1.1;
gzip_comp_level 2;
gzip_min_length 1k;
gzip_vary on;
gzip_types text/plain text/javascript application/x-javascript text/css text/xml application/xml application/xml+rss;
注释:
1.开启gizp 压缩
2.表示申请4个单位为16k的内存作为压缩结果流缓存,默认值是申请与原始数据大小相同的内存空间
3.用于设置识别http协议版本,默认是1.1
4.用来指定gzip压缩比,1压缩比最小,处理速度最快;9压缩比最大,传输速度快,处理速度慢
5.用于设置允许压缩的最小字节数;
6.选项可以让前端的缓存服务器缓存经过gzip压缩的页面
7.压缩类型,对那些网页文档启用压缩功能;
重启服务
说明:
上图抓包可看出,gzip模块一开始,将1033大小的文件,压缩了一半多604!!
节约了网络带宽和浏览体验;
咱们模拟一下盗链
源主机: www.as.top 20.0.0.25
盗链主机: www.hgg.top 20.0.0.26
(咱们用图片做一下防盗!!)
vi /usr/local/nginx/html/index.html
在末尾合适位置添加图片
"./b.jpg" />
1.在盗链主机做主机映射
vi /etc/hosts
20.0.0.25 www.as.top
2.修改配置文件index.html
vi /usr/local/httpd/htdocs/index.html
<!DOCTYPE html>
我要开始盗图了</em></p>
"http://www.as.top/b.jpg" />
</body>
</html>
保存
输入盗链主机ip登录网站:20.0.0.26/index.html
vi /usr/local/nginx/conf/nginx.conf #在server段内,添加
location ~* \.(gif|jpg|swf)$ {
valid_referers none blocked *.as.top as.top;
if ($invalid_referer) {
rewrite ^/ http://www.hgg.top/c.jpg;
}
}
说明:盗链后的图片 咱们指定的是rewrite 盗链主机下的c.jpg图片,咱们可以随意指定的!!!
这样就类似与两边互盗的感觉了,源主机又盗的盗链主机的c.jpg图片
....可能会有点绕,仔细屡屡就明白了
1.首先咱们需要做下真机的映射,将两个主机映射添加hosts文件里
2.再次登录验证,发现图片改变,但是图片连接地址是没有改变的,防盗成功!!
说明:(图片无意冒犯…随手弄的)
不太懂的朋友么可能没明白,为什么就变成了“横眉冷对千夫指了呢”??
- 回看步骤四的说明…,
■Nginx的PHP解析功能实现如果是交由FPM处理的,为
了提高PHP的处理速度,可对FPM模块进行参数的调整
■根据服务器的内存与服务负载,调整FPM模块参数
■启动fpm进程方式,通过pm参数指定
●static:将产生固定数量的fpm进程
D
●dynamic:将以动态的方式产生fpm进程
■FPM优化参数
●Static的方式的参数
◆pm.max_ children: 指定启动的进程数量
●Dynamic方式的参数
pm.max_ children: 指定启动进程数的最大值
◆pm.start_ servers: 动态方式下初始的fprg进程数
◆pm.min_ spare_ servers: 动态方式下最小的fpm空闭进程数
◆pm.max_ spare_ servers: 动态方式下最大的fpm空闭进程数
pm=dynamic
pm.max_ _children=20
pm.start_ servers = 5
pm.min_ spare_ servers = 2
pm.min_ spare_ servers= 8
FPM启动时有5个进程,最小空闲2个进程,最大空闲8个进程,最多可以有20个进程存在
cd /usr/local/php/etc/php-fpm.d
vi www.conf
pm=dynamic
pm.max_ _children=20
pm.start_ servers = 5
pm.min_ spare_ servers = 2
pm.min_ spare_ servers= 8