nginx配置用户认证

简介:

一、查看当前系统参数

[root@rhel6u3-2 ~]# uname –r  //查看系统内核版本号 

2.6.32-279.el6.i686 

[root@rhel6u3-2 ~]# cat /etc/redhat-release //查看系统版本号 

Red Hat Enterprise Linux Server release 6.3 (Santiago)

##二、编辑虚拟主机配置文件


[root@rhel6u3-7 ~]# vim /usr/local/nginx/conf/nginx.conf //主配置文件中http字段中添加以下语句,将虚拟主机的配置文件指向www1.rsyslog.org 

include /usr/local/nginx/server/www1.rsyslog.org; 

[root@rhel6u3-7 ~]# vim /usr/local/nginx/server/www1.rsyslog.org 

server { 

     listen       80;  //监听端口为80 

     server_name  www1.rsyslog.org;  //虚拟主机网址 

      location / { 

            root   sites/www1;  //虚拟主机网站根目录 

            index  index.html index.htm;  //虚拟主机首页 

            auth_basic "secret";  //虚拟主机认证命名 

            auth_basic_user_file /usr/local/nginx/passwd.db; //虚拟主机用户名密码认证数据库 

        } 

        location /status { 

                stub_status on;  //开启网站监控状态 

                access_log /usr/local/nginx/logs/www1_status.log; //监控日志 

                auth_basic "NginxStatus"; } 

    }

##三、通过htpasswd命令生成用户名及对应密码数据库文件。


[root@rhel6u3-7 server]# htpasswd -c /usr/local/nginx/passwd.db xiaonuo  //创建认证信息,xiaonuo 为认证用户名 

New password: *******  //输入认证密码 

Re-type new password: ********  //再次输入认证密码 

Adding password for user xiaonuo


也可使用OpenSSL生产用户名密码:printf "ssjlog:$(openssl passwd -crypt 123456)\n" >>conf/htpasswd


[root@rhel6u3-7 server]# 

[root@rhel6u3-7 ~]# chmod 400 /usr/local/nginx/passwd.db  //修改网站认证数据库权限 

[root@rhel6u3-7 ~]# chown nginx.  /usr/local/nginx/passwd.db  //修改网站认证数据库属主和属组 

[root@rhel6u3-7 ~]# cat /usr/local/nginx/passwd.db  //可以看到通过htpasswd生成的密码为加密格式 

xiaonuo:8eZAz7BqcrXmY 

[root@rhel6u3-7 ~]#

##四、平滑重启nginx服务


[root@rhel6u3-7 ~]# /etc/rc.d/init.d/nginx reload  //平滑重启nginx服务 

nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok 

nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful 

Reloading nginx:                                           [  OK  ]

五、nginx运行状态监控配置

1、通过web界面查看时Nginx需要开启status模块,也就是安装Nginx时加上--with-http_stub_status_module,在nginx.conf的server块中添加如下代码:

location /status {  

    # Turn on nginx stats  

    stub_status on;  

    # I do not need logs for stats  

    access_log   off;  

    # Security: Only allow access from 192.168.1.100 IP #  

    #allow 192.168.1.100;  

    # Send rest of the world to /dev/null #  

    #deny all;  

}

 配置完后重新启动Nginx后我们可以通过浏览器访问http://localhost/status 查看


2、解析:

Active connections    //当前 Nginx 正处理的活动连接数。

server accepts handled requests //总共处理了8 个连接 , 成功创建 8 次握手,总共处理了500个请求。

Reading //nginx 读取到客户端的 Header 信息数。

Writing //nginx 返回给客户端的 Header 信息数。

Waiting //开启 keep-alive 的情况下,这个值等于 active - (reading + writing),意思就是 Nginx 已经处理完正在等候下一次请求指令的驻留连接


3、通过命令查看tcp状态

#netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'

TIME_WAIT 17

ESTABLISHED 3254

LAST_ACK 236

FIN_WAIT_1 648

FIN_WAIT_2 581

CLOSING 7

CLOSE_WAIT 4916

解析:

CLOSED  //无连接是活动的或正在进行

LISTEN  //服务器在等待进入呼叫

SYN_RECV  //一个连接请求已经到达,等待确认

SYN_SENT  //应用已经开始,打开一个连接

ESTABLISHED  //正常数据传输状态/当前并发连接数

FIN_WAIT1  //应用说它已经完成

FIN_WAIT2  //另一边已同意释放

ITMED_WAIT  //等待所有分组死掉

CLOSING  //两边同时尝试关闭

TIME_WAIT  //另一边已初始化一个释放

LAST_ACK  //等待所有分组死掉


4、查看进程打开文件数量

lsof -p <PID>






     本文转自aaron428 51CTO博客,原文链接:http://blog.51cto.com/aaronsa/1728264,如需转载请自行联系原作者


相关文章
|
24天前
|
运维 前端开发 应用服务中间件
LNMP详解(八)——Nginx动静分离实战配置
LNMP详解(八)——Nginx动静分离实战配置
28 0
|
1月前
|
应用服务中间件 nginx
Nginx中如何配置中文域名?
Nginx中如何配置中文域名?
44 0
|
23天前
|
前端开发 应用服务中间件 nginx
Nginx配置详解Docker部署Nginx使用Nginx部署vue前端项目
Nginx配置详解Docker部署Nginx使用Nginx部署vue前端项目
95 0
|
1月前
|
PHP
百度虚拟机 bcloud_nginx_user.conf配置
百度虚拟机 bcloud_nginx_user.conf配置
22 0
|
3天前
|
安全 应用服务中间件 网络安全
SSL原理、生成SSL密钥对、Nginx配置SSL
现在,你的Nginx虚拟主机应该已经配置了SSL,可以通过HTTPS安全访问。确保在生产环境中使用有效的SSL证书来保护通信的安全性。
14 0
|
6天前
|
域名解析 缓存 负载均衡
Nginx正向代理域名的配置
Nginx正向代理域名的配置
|
6天前
|
前端开发 JavaScript 应用服务中间件
修改Jeecg-boot context-path(附加图片+Nginx配置)
修改Jeecg-boot context-path(附加图片+Nginx配置)
12 0
|
17天前
|
应用服务中间件 nginx
nginx进行反向代理的配置
在Nginx中设置反向代理的步骤:编辑`/etc/nginx/nginx.conf`,在http段加入配置,创建一个监听80端口、服务器名为example.com的虚拟主机。通过`location /`将请求代理到本地3000端口,并设置代理头。保存配置后,使用`sudo nginx -s reload`重载服务。完成配置,通过example.com访问代理服务器。
25 0
|
18天前
|
应用服务中间件 网络安全 nginx
nginx配置https访问
nginx配置https访问
31 0
|
27天前
|
应用服务中间件 nginx
nginx配置访问qicaitun.com强制跳转www.qicaitun.com
nginx配置访问qicaitun.com强制跳转www.qicaitun.com
9 0