为Nginx目录设置访问密码

创建htpasswd文件:

可以使用以下这个python脚本生成:

http://trac.edgewall.org/export/10770/trunk/contrib/htpasswd.py

执行命令:

chmod 777 htpasswd.py
./htpasswd.py -c -b htpasswd username password

其中htpasswd是生成的文件名

2.修改nginx的conf

修改nginx.conf或者所要设置的vhost的conf,加入如下语句:

location  ^~ /
{
auth_basic "Password";
auth_basic_user_file /usr/local/nginx/conf/htpasswd;
}

其中htpasswd是上面步骤一生成的文件,我放到了nginx的conf文件夹下。这样就对整个根目录进行了加密,但是出现了一个问题就是无法解析php。那么将上述文件中的php解析部分改成:

location ^~ / {
location ~ .*\.(php|php5)?$ {
fastcgi_pass unix:/tmp/php-cgi.sock;
fastcgi_index index.php;
include fcgi.conf;
}
auth_basic "Password";
uth_basic_user_file /usr/local/nginx/conf/htpasswd;
}

暂无评论

写评论

您必须登录后才可以发表评论。

本人从事电脑网络维护工作多年,对电脑配置较为熟悉,闲暇之余精心搜罗了目前主流电脑配置清单推荐给大家。紧跟市场动态,定期更新电脑硬件配置方案,扫除一切垃圾坑爹配置,提供最具性价比的电脑配置清单!本站涵盖内容包括:电脑组装机配置单、电脑组装机报价、电脑组装机教程等,另外还提供很多技术文章供您学习!