视频下载网站
- 网站名:视频下载网站
- 域名:video.download.cn
- 站点目录:/app/code/vide/
- 需求:
- 浏览器打开后,显示目录结构
- 增加svip认证功能
- 增加统计功能(统计nginx服务的访问等状态)
autoindex模块
自动索引功能(列表站点目录的内容),首页文件不存在
autoindex模块 | 说明 |
autoindex on; | 开启目录索引功能(显示站点目录下文件的列表,要求首页文件不存在) |
autoindex_localtime on; | 显示本地时间 |
autoindex_exact_size off; | 是否显示精确的文件大小(off 表示以人类可读形式显示文件大小) |
server{listen 80;server_name video.download.cn;charset utf-8; # 字符编码使用utf-8root /app/code/video/;error_log /var/log/nginx/video.download.cn-error.log;access_log /var/log/nginx/video.download.cn-access.log;autoindex on; # 开启目录索引列表功能autoindex_localtime on; # 显示本地时间autoindex_exact_size off; # 显示精确的文件大小 location / {index index.html;} }
增加svip认证功能
auth_basic模块 | 说明 |
auth_basic "提示内容"; | 输出提示信息 |
auth_basic_user_file conf/htpasswd; | 指定用户名、密码文件 |
只要用户访问包含svip资源,提示输入密码
# 创建密码文件并修改文件权限yum install -y httpd-tools# 创建文件htpasswd -bc /etc/nginx/user yuan yuan123-c:创建文件-b:命令行指定用户名和密码# 增加用户htpasswd -b /etc/nginx/user xiaojiang xiaojiang123# 修改权限chmod 600 /etc/nginx/userchowm nginx:nginx /etc/nginx/user [root@web01 ~]# cat /etc/nginx/user yuan:$apr1$yO/oVJAu$cf9PbVdvJGtbBiG/dOW2b1xiaojiang:$apr1$lyDEw1iG$7GFS2cnSUfS0A4ueO9Rry1# 虚拟主机 [root@web01 /etc/nginx/conf.d]# cat video.download.cn.conf server{listen 80;server_name video.download.cn;charset utf-8;root /app/code/video/;error_log /var/log/nginx/video.download.cn-error.log;access_log /var/log/nginx/video.download.cn-access.log;autoindex on;autoindex_localtime on;autoindex_exact_size off; location / {index index.html;}location /svip/ {auth_basic "input password:";auth_basic_user_file /etc/nginx/user;} }
增加统计功能
显示ngx当前状态,未来用于监控ngx
stub_status模块,显示nginx服务的状态,
location /status { # 站点目录下不需要创建/status目录 stub_status; }
浏览器中访问:video.download.cn/statusActive connections: 4 server accepts handled requests43 43 117 Reading: 0 Writing: 1 Waiting: 3
stub_status模块中的指标 | 说明 |
Active connections | 当前已经建立的连接数 |
server accepts | 已经接收到的客户端的连接总数 |
server handled | 服务端已经处理的连接数 |
server requests | 客户端发出请求总数 |
Reading | 正在读取的请求主体的连接数 |
Writing | 正在进行响应的连接数 |
Waiting | 当前Nginx中处于空闲状态的连接数 |
# ab压力测试功能ab -n 9999 -c 99 -H Host:vide.download.cn http://10.0.0.7/
模块小结
模块 | 模块中的核心指令 |
目录索引模块 | autoindex on; |
认证功能模块 | auth_basic_user_file; |
访问控制模块 | allow,deny |
状态模块 | stub_status |
nginx核心模块 |
root、location、error_log、server_name、listen |
nginx日志模块 | access_log、log_format |
动态网站架构(部署一份开封的php代码)
动/静态网站
网站类型 | 说明 | 性能 |
静态网站 |
服务器上存储的HTML页面(HTML、CSS、JavasScript) 静态文件可以直接由nginx直接处理 |
加载速度快,维护轻松 |
动态网站 |
根据用于的请求和交互实时生成内容的网站 通常依赖于数据库和服务端脚本(PHP、Python) |
加载速度受数据库和服务器处理影响,维护较复杂 |