nginx基础配置实例

nginx账户认证功能

由ngx_http_auth_basic_module 模块提供此功能

建立非交互用户认证

[root@Nginx ~]# htpasswd -cmb /usr/local/nginx/conf/.htpasswd admin admin

创建web测试静态文本

mkdir /webdata/nginx/example.org/example/login
echo login > /webdata/nginx/example.org/example/login/index.html

编辑nginx子配置文件

子配置文件启用需要在主配置文件中完成include的指向

[root@Nginx ~]# vim /usr/local/nginx/conf.d/vhosts.conf
server {
listen 80;
server_name example.example.org;
location /login {
root /webdata/nginx/example.org/example;
index index.html;
auth_basic "login password";
auth_basic_user_file "/usr/local/nginx/conf/.htpasswd";
}
}

自定义错误页面

编辑配置文件

listen 80;
server_name www.timinglee.org;
error_page 500 502 503 504 /error.html;
location = /error.html {
root /data/nginx/html;
}

重启nginx并访问不存在的页面测试

nginx -s reload

自定义错误页面

mkdir /webdata/nginx/example/example/errors -p
echo error page > /webdata/nginx/example/example/errors/40x.html
vim /usr/local/nginx/conf.d/vhosts.conf
server {
listen 80;
server_name example.example.org;
error_page 404 /40x.html
location = /40x.html {
root /webdata/nginx/example/example/errors;
}
}

测试

curl example.example.org/haha

自定义错误日志

示例

mkdir "/var/log/nginx" -p
 vim /usr/local/nginx/conf.d/vhosts.conf
server {
listen 80;
server_name example.example.org;
error_page 404 /40x.html;
access_log /var/log/nginx/access.log;
error_log /var/log/nginx/error.log;
location = /40x.html {
root /webdata/nginx/example/example/errors;
}
}
#重启nginx并访问不存在的页面进行测试并验证是在指定目录生成新的日志文件

检测文件是否存在

try_files会按顺序检查文件是否存在,返回第一个找到的文件或文件夹(结尾加斜线表示为文件夹),如
果所有文件或文件夹都找不到,会进行一个内部重定向到最后一个参数。只有最后一个参数可以引起一
个内部重定向,之前的参数只设置内部URI的指向。最后一个参数是回退URI且必须存在,否则会出现内
部500错误。

编辑配置实现不存在页面跳转至default.html

vim /usr/local/nginx/conf.d/vhosts.conf
server {
listen 80;
server_name example.example.org;
root /webdata/nginx/example.org/example;
error_page 404 /40x.html;
access_log /var/log/nginx/access.log;
error_log /var/log/nginx/error.log;
try_files $uri $uri.html $uri/index.html /error/default.html;
location = /40x.html {
root /webdata/nginx/example/example/errors;
}
}

作为下载服务器配置

ngx_http_autoindex_module 模块处理以斜杠字符 “/” 结尾的请求,并生成目录列表,可以做为下载服务配置使用

autoindex on | off; #自动文件索引功能,默为off
autoindex_exact_size on | off; #计算文件确切大小(单位bytes),off 显示大概大小(单位K、M),默认on
autoindex_localtime on | off ; #显示本机时间而非GMT(格林威治)时间,默认off
autoindex_format html | xml | json | jsonp; #显示索引的页面文件风格,默认html
limit_rate rate; #限制响应客户端传输速率(除GET和HEAD以外的所有方法),单位B/s,bytes/second, #默认值0,表示无限制,此指令由ngx_http_core_module提供
set $limit_rate 4k; #也可以通变量限速,单位B/s,同时设置,此项优级高.

配置示例

mkdir -p /webdata/nginx/example.org/example/download
cp /root/anaconda-ks.cfg /webdata/nginx/example.org/example/download
 #复制测试文件
vim /usr/local/nginx/conf.d/vhosts.conf
server {
listen 80;
server_name example.example.org;
root /webdata/nginx/example.org/example;
access_log /var/log/nginx/access.log;
error_log /var/log/nginx/error.log;
try_files $uri $uri.html $uri/index.html /error/default.html;
location = /40x.html {
root /webdata/nginx/example/example/errors;
}
location /download {
autoindex on; #自动索引功能
autoindex_exact_size on; #计算文件确切大小(单位bytes),此为默认值,off只显示
大概大小(单位kb、mb、gb)
autoindex_localtime on; #on表示显示本机时间而非GMT(格林威治)时间,默为为off显
示GMT时间
limit_rate 1024k; #限速,默认不限速 }
}

测试示例
在这里插入图片描述

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值