Nginx Static
nginx配置静态文件服务器
搭建文件服务器
要点就是root目录,会自动指向索引文件 如: index, index.html等
server {
client_max_body_size 4G;
listen 80; ## listen for ipv4; this line is default and implied
server_name static.test.sdk.iwplay.com.tw;
root /home/mini/Sync;
location / {
}
}
建立索引
建立目录索引也同样如此,不要带索引名称之类的文件,否则会直接显示文件,而不是目录
server {
client_max_body_size 4G;
listen 80; ## listen for ipv4; this line is default and implied
server_name static.test.sdk.iwplay.com.tw;
root /home/mini/Sync;
location / {
autoindex on; //显示索引
autoindex_exact_size on; //显示大小
autoindex_localtime on; //显示时间
}
}
设置密码
搭建文件服务器有时候不想让别人任意访问,想做成一个私有的该怎么办呢,这个时候我们可以用到nginx自带的认证模块。 同样关键的是auth_basic/auth_basic_user_file字段
server {
client_max_body_size 4G;
listen 80; ## listen for ipv4; this line is default and implied
server_name static.test.sdk.iwplay.com.tw;
root /home/mini/Sync;
location / {
auth_basic "Restricted";
auth_basic_user_file /etc/nginx/pass_file;
autoindex on;
autoindex_exact_size on;
autoindex_localtime on;
}
}
- auth_basic表示的输入密码时的提示语
- auth_basic_user_file则显示认证时的用户密码文件存放路径
生成用户密码
上文实现了用户认证,那么如何添加用户呢。nginx自带了一个功能,如下
htpasswd -c -d /etc/nginx/pass_file username
这样就在/etc/nginx/pass_file 中添加了了一个用户
开启压缩
server {
client_max_body_size 4G;
listen 80; ## listen for ipv4; this line is default and implied
server_name static.test.sdk.iwplay.com.tw;
root /home/mini/Sync;
# new config lines for gzip
gzip on;
gzip_min_length 1k;
gzip_buffers 4 8k;
gzip_http_version 1.1;
gzip_types text/plain application/javascript application/x-javascript text/javascript text/css application/xml;
location / {
auth_basic "Restricted";
auth_basic_user_file /etc/nginx/pass_file;
autoindex on;
autoindex_exact_size on;
autoindex_localtime on;
}
}