我想用我用来让 htaccess 和 htpasswd 工作以通过模板组保护的代码来更新它。它可以以与 Alex 相同的方式使用,但是是一种全有或全无的方法。它有自己的优点和缺点,但想把它作为一种选择来分享。
首先,我使用的是原生模板行为:example.com/group/template/url_title。我想用密码保护一些模板组,但在 EE 的成员和成员组之外。即单个用户和密码。
我的 htaccess 文件看起来像这样(来自http://perishablepress.com/enable-file-or-directory-access-to-your-htaccess-password-protected-site/):
# We set some variables, matching URL's for which we do not wish to active
# the password protection
SetEnvIf Request_URI "^/privategroup.*$" private
# Setup the password protection
AuthName "Password Needed"
AuthGroupFile /dev/null
AuthType Basic
AuthUserFile /Users/user/Sites/example/.htpasswd
Require valid-user
# Add the exceptions for matched URL's
Order Deny,Allow
Deny from env=private
Satisfy any
htpasswd 文件应该在 webroot 之上,但是为了测试我把它留在了 webroot 中。AuthUserFile 行告诉 Apache 在哪里可以找到包含用户名和密码的文件。这必须...必须是绝对路径。我正在使用相对并得到 500 个错误。您需要使用终端或其他工具来制作此文件。http://developer.apple.com/library/Mac/#documentation/Darwin/Reference/ManPages/man1/htpasswd.1.html
结果是该目录需要用户名和密码。现在它将接受我的 htpasswd 文件中的任何有效用户。但是,我可以通过指定特定用户(需要用户 john tim lisa)或组来更改它。
你有它。不使用任何本机 EE 功能,让人们远离特定的模板组。