LNMP下为Nginx目录设置访问验证的用户名密码
有时候需要象Apache那样为指定的目录添加访问验证,一般在Apache下使用htpasswd来添加,而htpasswd是包含在apache2-utils里,一般LNMP一键安装包或自己编译安装LNMP都不会安装apache2-utils。下面VPS侦探说一下如何为Nginx的网站目录设置访问验证:
1、创建类htpasswd文件
执行:wget -c soft.vpser.net/lnmp/ext/htpasswd.sh;bash htpasswd.sh
按提示输入用户名、密码、及认证文件名。脚本会自动生成认证文件。记录下脚本返回的文件路径。如:/usr/local/nginx/conf/vpser.net.auth。
2、为Nginx添加auth认证配置
下面是以某域名下面的soft目录为例,在域名的server段里加上如下代码:
location ^~ /soft/
{
auth_basic "Authorized users only";
auth_basic_user_file 这里写前面脚本返回的文件路径;
}
Authorized users only为提示信息,可以修改成自己想让他提示的信息;auth_basic_user_file 后面需要填htpasswd.sh脚本返回的人家文件的路径。按上面的提示修改好配置后,重启nginx,访问http://yourdomainname/soft/ 就会提示输入用户名和密码。
注意,加上认证之后该目录下的PHP将不会被解析,会出现下载提示,如果想可以解析PHP可以将上面的配置改为:
location ^~ /soft/ {
location ~ .*\.(php|php5)?$ {
fastcgi_pass unix:/tmp/php-cgi.sock;
fastcgi_index index.php;
include fcgi.conf;
}
auth_basic "Authorized users only";
auth_basic_user_file 这里写前面脚本返回的文件路径;
}
本教程适合LNMP一键安装包或自己安装的LNMP,只不过目录和配置文件可能位置不一样。
如有问题欢迎在本文下方留言或到VPS论坛交流反馈。
原创文章,谢绝转载!
相关文章:
- lnmp去掉nginx上传目录的PHP执行权限
- Nginx日志切割脚本
- LNMP一键安装包 自动无缝升级Nginx至任意版本
- BurstNet VPS上让Nginx(lnmp)支持IPv6
- LNMP使用Awstats分析Nginx日志[转载]
- 再提供一种解决Nginx文件类型错误解析漏洞的方法
- nginx文件类型错误解析漏洞
- 在Nginx上配置NameCheap免费SSL
- Nginx无缝升级
- Nginx 目录自动加斜线”/”
© VPSer for VPS侦探, 2011. |
Permalink |
2 comments |
Add to
del.icio.us
Post tags: auth_basic, htpasswd, Nginx, nginx目录, nginx目录访问密码, 目录密码验证
美国VPS推荐 | 军哥代购 - 提供美国及海外VPS/VPN/域名代购,美元/欧元代付 QQ:503228080