<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>深度VPS &#187; htpasswd</title>
	<atom:link href="http://www.deepvps.com/tag/htpasswd/feed" rel="self" type="application/rss+xml" />
	<link>http://www.deepvps.com</link>
	<description>专注VPS技术，关注前端技术</description>
	<lastBuildDate>Sat, 04 Feb 2023 14:00:33 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>如何设置 nginx 目录密码保护</title>
		<link>http://www.deepvps.com/how-to-setup-nginx-directory-password-protection.html</link>
		<comments>http://www.deepvps.com/how-to-setup-nginx-directory-password-protection.html#comments</comments>
		<pubDate>Mon, 10 May 2010 15:02:33 +0000</pubDate>
		<dc:creator>deepvps</dc:creator>
				<category><![CDATA[VPS管理维护]]></category>
		<category><![CDATA[crypt(3)]]></category>
		<category><![CDATA[htpasswd]]></category>
		<category><![CDATA[加密]]></category>
		<category><![CDATA[密码保护]]></category>
		<category><![CDATA[目录]]></category>

		<guid isPermaLink="false">http://www.deepvps.com/?p=425</guid>
		<description><![CDATA[比如要对 网站目录下的 test 文件夹 进行加密认证
那么 在 nginx.conf 文件中对应的 server 段中 添加
location ^~ /test/ {
auth_basic TEST-Login;
auth_basic_user_file /root/htpasswd;
再在 root 的主目录中 /root/ 创建一个新文件 htpasswd
此文件的书写格式是
用户名:密码
每行一个账户
并且 密码必须使用函数 crypt(3) 加密
官方档说 可以用 Apache 的 htpasswd 工具来创建密码文件
当然也可以使用perl 创建密码文件 新建 一个 pw.pl 文件 其内容：
#!/usr/bin/perl
use strict;
my $pw=$ARGV[0] ;
print crypt($pw,$pw).&#8221;n&#8221;;
然后执行 chmod +x pw.pl
./pw.pl password
papAq5PwY/QQM
papAq5PwY/QQM 就是password 的crypt()密码
然后 将上面用 perl 生成的 加密后的密码
按照
用户名:密码
的格式写到 htpasswd 文件中
这样既完成了设置
如果 不用
^~ /test/
而用
/test
的话 那么 将只能对目录进行验证 [...]]]></description>
			<content:encoded><![CDATA[<p>比如要对 网站目录下的 test 文件夹 进行加密认证</p>
<p>那么 在 nginx.conf 文件中对应的 server 段中 添加</p>
<blockquote><p>location ^~ /test/ {<br />
auth_basic TEST-Login;<br />
auth_basic_user_file /root/htpasswd;</p></blockquote>
<p><span id="more-425"></span>再在 root 的主目录中 /root/ 创建一个新文件 htpasswd<br />
此文件的书写格式是<br />
用户名:密码<br />
每行一个账户<br />
并且 密码必须使用函数 crypt(3) 加密</p>
<p>官方档说 可以用 Apache 的 htpasswd 工具来创建密码文件<br />
当然也可以使用perl 创建密码文件 新建 一个 pw.pl 文件 其内容：</p>
<blockquote><p>#!/usr/bin/perl<br />
use strict;</p>
<p>my $pw=$ARGV[0] ;<br />
print crypt($pw,$pw).&#8221;n&#8221;;</p></blockquote>
<p>然后执行 chmod +x pw.pl<br />
./pw.pl password<br />
papAq5PwY/QQM<br />
papAq5PwY/QQM 就是password 的crypt()密码<br />
然后 将上面用 perl 生成的 加密后的密码<br />
按照<br />
用户名:密码<br />
的格式写到 htpasswd 文件中</p>
<p>这样既完成了设置</p>
<p>如果 不用<br />
^~ /test/<br />
而用<br />
/test<br />
的话 那么 将只能对目录进行验证 直接访问其下的文件 将不会弹出登录验证</p>
<p>还有 htpasswd 这个文件的名字可以 自己随意设置<br />
用户名 也是 自己随意设置 无需加密<br />
密码必须使用函数 crypt(3) 加密</p>
<p>转自：<a href="http://www.htooy.org/blog/18/nginx-401" target="_blank">HTOOY.ORG</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.deepvps.com/how-to-setup-nginx-directory-password-protection.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>
