linux学习

Nginx配置解析

Nginx的主配置文件为/usr/local/nginx/conf/nginx.conf,配置语句的格式为“关键字 值;”(末尾以分号表示结束),以“#”开始的部分表示注释。配置结构如下:

http{
    ... …
    server {
        … …
        location / {
            … …
        }
    }
}

其中,HTTP配置使用“http { }”界定标记,虚拟Web主机、PHP解析等一系列设置,其中大部分配置语句都包含在子界定标记“server { }”内。

http  {
……
server {                      //定义虚拟主机
        listen       80;
        server_name   localhost;
        location  /  {                              //发布目录
            root   html;
            index   index.html index.htm;
        }
     }
}

上述配置中,listen语句允许同时限定IP地址,采用“IP地址:端口”形式;root语句用来设置特定访问位置(如“location /”表示根目录)的网页文档路径,默认为Nginx安装目录下的html/子目录,根据需要可改为/var/www/html等其他路径。

用户认证

1、配置Nginx用户认证
修改配置文件/usr/local/nginx/conf/nginx.conf:
[root@proxy nginx]# vim /usr/local/nginx/conf/nginx.conf
.. ..
server {
        listen       80;
        server_name  localhost;
        auth_basic "Input Password:";                    //认证提示符信息
        auth_basic_user_file  "/usr/local/nginx/pass";   //认证的密码文件
        location / {
            root   html;
            index  index.html index.htm;
        }
  }
2、安装httpd-tools,生成密码文件,使用htpasswd命令创建账户文件:
[root@proxy nginx]# yum -y install  httpd-tools
[root@proxy nginx]# htpasswd -c /usr/local/nginx/pass   lisi        //创建密码文件
New password:                                                       //密码:123456
Re-type new password: 
Adding password for user lisi
[root@proxy nginx]# /usr/local/nginx/sbin/nginx -s reload         //重新加载配置文件 

查看该网站目前需要使用账号与密码登录

可以使用 htpasswd 命令追加认证账户:
[root@proxy ~]# htpasswd  /usr/local/nginx/pass   zhangsan     //追加用户,不使用-c选项
New password: 
Re-type new password: 
Adding password for user zhangsan
[root@proxy nginx]# /usr/local/nginx/sbin/nginx -s reload         //重新加载配置文件 

留言

您的电子邮箱地址不会被公开。 必填项已用 * 标注