Nginx发布静态业务
生产环境:操作系统:CentOS 6.8
Web服务软件:nginx-1.10.1
任务驱动:接到领导指示,要把14G左右大小的大学生创业序列视频发布到网上。
分析任务:考虑到此视频容量大,该格式不支持在线播放,又要有利用于学校师生方便获取视频资料,同时又要迎接上级检查。
解决方式:让师生下载视频到本地电脑观看学习。
效果:通过完成实战任务来消化1个月来学习nginx的知识。
有两种方案可供选择:
1.CentOS+Apache: 动态业务,可以选择Apache,建议选择nginx。2.CentOS+nginx:静态业务,高并发场景,采用Nginx,既有静态业务又有动业务,也将采用Nginx,此项任务是静态业务,所以选择nginx。操作步骤:
1.在客户端先分别压缩各个视频,然后通过WinSCP上传到Linux服务器。2.安装nginx服务软件省略。3.主要是对nginx的基本安全优化,对参数优化提升服务性能,限制网站来源IP访问,错误页面的跳转,对站点目录及目录权限优化,控制并发连接数量,控制客户端请求的速率。# ca t nginx.conf
usernginxnginx;#更改默认用户
worker_processes2; #因有2个CPU,所以配置2个进程数
worker_rlimit_nofile65535;#进程最大打开文件数,该要放在主标签段
events {
use epoll;#事件处理模型优化
worker_connections512;#单个客户进程允许的客户端连接数,因硬件配置太低,所以设置数字比较小;
}
http {
include mime.types;
default_typeapplication/octet-stream;
charset utf-8; #解决网页乱码
server_tokens off; #关闭显示服务版本信息
tcp_nodelay on; #提高I/O性能
client_header_timeout 15; #客户端请求头数据的超时时间
client_body_timeout 15; #客户端请求主体的超时时间
send_timeout 25;
client_max_body_size8m; #上传文件大限限制
log_formatmain'$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
#access_loglogs/access.logmain;
sendfile on;#开启文件的高效传输模式
tcp_nopush on;#防止网络和磁盘阻塞
keepalive_timeout60;#设置连接超时
# include extra/nginx_vhosts.conf;
limit_conn_zone $binary_remote_addr zone=addr:10m;
limit_req_zone $binary_remote_addr zone=one:20m rate=1r/s;#控制客户端请求的nginx速率
server {
listen 9090; #采用9090端口,默认的是80端口
server_name117.40.*.*:9090;
access_log/application/nginx/logs/www.access.log;
error_log/application/nginx/logs/www.error.log;
limit_conn addr 10; #限制单IP的并发连接数为10 limit_req zone=oneburst=30; # 30个请求排队
location / {
root/application/nginx/html/www;
error_page 404/404.html; #当出现404错误时,会跳转到404.html页面
error_page 404http://117.*.*.*; #两种方式选择使用其中一种来解决实际问题
autoindex on; #开启显示目录功能
autoindex_exact_size off;#显示出文件的大概大小,单位是GB
autoindex_localtime on; #显示的文件时间为文件的服务器时间
deny 192.168.1.1; #只允许该IP访问
allow 192.168.1.0/24;#只允许该IP段访问
allow 192.168.0.0/16;#只允许该IP段访问
allow 117.40.*.*/24;#只允许该IP段访问
allow 182.99.242.*;#只允许该IP访问
deny all; #除了上面允许的,其他的都禁止。
}
}
}
# chmod 755 www#目录权限,保证不遭受木马入侵
# chmod 644 *.* #文件权限
页:
[1]