目录
1.限流
//$binary_remote_addr 表示通过remote_addr这个标识来做限制 //zone=addr:10m 表示生成一个大小为10M,名字为addr的内存区域
limit_conn addr 1; #限制并发数
ab -c 一次产生的请求个数。默认是一次一个
-n 在测试会话中所执行的请求个数。默认时,仅执行一个请求
压力测试无失败
当请求个数增加则产生错误
查看nginx日志
200表示成功;503表示不成功
limit_req_zone $binary_remote_addr zone=one:10m rate=1r/s; ##rate=1r/s表示允许相同标识的客户端的访问频次,这里限制的是每秒1次
limit_req zone=one;
limit_req zone=one burst=5; ##表示请求队列的长度
limit_req zone=one burst=5 nodelay; ##nodelay 表示不延时
limit_rate 50k; ##限速50k
因为照片400k左右所以需要等待八秒
2.文件的有效期
365d 一年
3.建立日志备份
kill -USR1 `cat /usr/local/nginx/logs/nginx.pid`
为了安全,日志目录不需要给你nginx用户访问权限
# chmod -R 700 /usr/local/nginx/logs
4.日志可视化
goaccess access.log -o /usr/local/nginx/html/report.html --log-format=COMBINED --real-time-html
5.禁止外网访问
禁用不必要的日志记录
以节省磁盘IO的消耗
location ~ .*\.(js|jpg|jpeg|png|css|bmp|gif)$
{ access_log off;
}
站点目录和文件的限制
location ~ ^/images/.*\.(sh|php)$
{ deny all;
}
allow #本机网络
deny #禁止所有
本机可以访问
中文乱码
charset utf-8;
6.重定向
防止域名恶意解析到服务器IP
由http重定向到https
配置文件第五行 cert.key改成cert.pem
编译https相关信息
mv /etc/pki/tls/certs/cert.pem /usr/local/nginx/conf/
重定向到https
bbs.westos.org
7.防盗链
80重定向443:
server {
isten 80;
server_name www.westos.org;
rewrite ^/(.*)$ https://www.westos.org/$1 permanent;
}
www.westos.org/bbs 重定向bbs.westos.org:
rewrite ^/bbs$ http://bbs.westos.org permanent;
rewrite ^/bbs/(.*)$ http://bbs.westos.org/$1 permanent;
bbs.westos.org 重定向www.westos.org/bbs:
if ($host = "bbs.westos.org"){
rewrite ^/(.*)$ http://www.westos.org/bbs/$1 permanent;
}