>  기사  >  운영 및 유지보수  >  Nginx는 어떻게 사용자가 사용자 이름과 비밀번호 인증을 통해 웹 사이트에 액세스할 수 있도록 허용합니까?

Nginx는 어떻게 사용자가 사용자 이름과 비밀번호 인증을 통해 웹 사이트에 액세스할 수 있도록 허용합니까?

WBOY
WBOY앞으로
2023-05-11 17:19:151628검색

실험 환경:

이제 회사는 내부 웹사이트 www1.rsyslog.org를 열었습니다. 모든 사람은 웹페이지 정보를 보기 전에 기본 사용자 이름과 비밀번호를 입력해야 합니다.

nginx를 사용하여 호스트 설정 가상화

www1. 테스트용 rsyslog.org.

www1.rsyslog.org 192.168.100.107

dns1 192.168.100.102

1. 현재 시스템 매개변수 보기

[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)

2. 가상 호스트 구성 파일 편집

[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"; } 
  }

3. 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 
[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 ~]#

4. 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 ]

5. DNS 서버에 www1 레코드를 추가합니다.

www1 a 192.168.100.107

6. IE를 통해 www1.rsyslog.org를 방문합니다. 테스트를 위해 .

네트워크 카드의 기본 DNS를 192.168.100.102Nginx는 어떻게 사용자가 사용자 이름과 비밀번호 인증을 통해 웹 사이트에 액세스할 수 있도록 허용합니까?Nginx는 어떻게 사용자가 사용자 이름과 비밀번호 인증을 통해 웹 사이트에 액세스할 수 있도록 허용합니까?

로 지정하는 것을 잊지 마세요.

위 내용은 Nginx는 어떻게 사용자가 사용자 이름과 비밀번호 인증을 통해 웹 사이트에 액세스할 수 있도록 허용합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 yisu.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제