飞龙再生

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

有时候需求这样:某个域名,或域名下的某个目录,需要访问时输入指定的用户名和密码。nginx可以做到,而且一点不比apache差。

 
  1. server
  2. {
  3.      listen 80;
  4.      server_name  www.test.com;
  5.      index index.html index.htm index.php;
  6.      root  /opt/htdocs;
  7.  
  8.      location / {
  9.          auth_basic "welcome to www.abcd.com:";
  10.          auth_basic_user_file htpasswd;
  11.          gzip off;
  12.      }
  13. }
<link href="http://www.kukaka.org/admin/fckeditor/editor/plugins/highlighter/dp.SyntaxHighlighter/Styles/SyntaxHighlighter.css" type="text/css" rel="stylesheet" />

注意gzip需要关闭,因为会把动态文件解析成静态。 然后需要建立密码文件在conf目录下,名字叫htpasswd,命令如下:

 
  1. htpasswd -bdc /opt/nginx/conf/htpasswd abcd 123456
<link href="http://www.kukaka.org/admin/fckeditor/editor/plugins/highlighter/dp.SyntaxHighlighter/Styles/SyntaxHighlighter.css" type="text/css" rel="stylesheet" />

这里的htpasswd为linux下建立pwd的工具,很多参数。上面命令建立一个abcd的用户,密码为

123456。

重启nginx,访问该域名即弹出http验证框,错误则提示401。

posted on 2015-09-01 14:42  飞龙再生  阅读(256)  评论(0)    收藏  举报