我有一个使用基本身份验证的.htaccess.似乎.htpasswd文件的路径与htaccess文件无关,而是与服务器配置相关.
因此即使我在同一目录中有.htaccess和.htpasswd文件,这也不起作用:
AuthType Basic
AuthName "Private Login"
AuthUserFile .htpasswd
Require valid-user
Run Code Online (Sandbox Code Playgroud)
但是,如果我将AuthUserFile更改为使用绝对路径,它确实有效:
AuthType Basic
AuthName "Private Login"
AuthUserFile "/home/user/public_html/mydir/.htpasswd"
Require valid-user
Run Code Online (Sandbox Code Playgroud)
但我更喜欢更具移动性的东西,因为我在不同领域的多个网站上使用它.我在网上搜索过但没有任何解决方案.是否可以使用相对路径或变量%{DOCUMENT_ROOT}
?
我.htpasswd
用来密码保护我服务器上的某些目录.但是,我注意到每次我这样做时,sudo htpasswd -c /etc/apache2/.htpasswd newuser
我的当前内容.htpasswd
都会被覆盖.我网站的每个目录都有自己的用户.htpasswd.
我怎么能不覆盖而是在我的上面添加一个新用户.htpasswd
呢?
可能重复:
通过PHP进行HTTP身份验证注销
你好
我在我的网站上使用.htaccess
和保护了一些功能.htpasswd
.当用户尝试访问它时,他们会立即输入详细信息.他们输入他们的细节并进入,可以看到东西等.一切正常.
我的问题是如何logout
为这种类型的身份验证创建功能.我知道他们可以关闭浏览器窗口以"注销".但这并不理想.你有什么建议给我的?
谢谢.
我正在尝试密码保护目录,并在目录中有两个文件应该密码保护它:
.htaccess中:
###Contents of .htaccess:
AuthUserFile /var/www/html/path/to/my/directory/.htpasswd
AuthName "Protected Files"
AuthType Basic
Require user admin
Run Code Online (Sandbox Code Playgroud)
HTPASSWD:
###Contents of .htpasswd
admin:oxRHPuqwKiANY
Run Code Online (Sandbox Code Playgroud)
密码也是管理员,但无论我尝试什么密码,总是错误的.它立即再次要求输入密码!
这个配置有什么问题?
有没有建立一个编程方式的htpasswd文件,不依赖操作系统的特定功能(即exec()
,passthru()
)?
有没有办法从命令行检查用户和密码来检查由Apache提供的工具htpasswd创建的文件?
我试图在Ubuntu Jaunty中使用nginx进行基本身份验证.在nginx.conf中,我在服务器上下文中添加了这两行:
server {
...
auth_basic "Restricted Access";
auth_basic_user_file /etc/nginx/.htpasswd;
...
}
Run Code Online (Sandbox Code Playgroud)
然后我apt-get'ed apache2-utils获取htpasswd,我用它来创建htpasswd文件:
htpasswd -d -c /etc/nginx/.htpasswd joe
Run Code Online (Sandbox Code Playgroud)
当我尝试访问该站点时,验证对话框按预期出现,但是当我输入用户名和密码时,它只刷新了对话框.它似乎不喜欢我提供它的密码.我尝试使用和不使用-d选项运行htpasswd,但仍然没有运气.它拒绝进行身份验证.我有什么想法我做错了吗?
任何帮助,将不胜感激.
我试图从命令行自动创建密码.我已经尝试过以下但仍然一直要求输入密码.
echo "test101" | htpasswd -c ~/temp/password admin
Run Code Online (Sandbox Code Playgroud)
如何在htpasswd
不输入密码的情况下从命令行生成自动化?
希望有人能够帮助解决这个问题!我一直在谷歌搜索超过2个小时,我尝试的任何东西都在工作......
我想密码保护我的网站,但是当我添加.htpasswd和.htaccess文件时,我收到服务器错误:
内部服务器错误服务器遇到内部错误或配置错误,无法完成您的请求.请与服务器管理员联系,告知他们错误发生的时间,以及可能导致错误的任何操作.服务器错误日志中可能提供了有关此错误的更多信息.
这是我正在使用的代码:
的.htaccess
AuthType Basic
AuthName "Top Secret for SongKick eyes only."
AuthUserFile /webroot/.htpasswd
require valid-user
Run Code Online (Sandbox Code Playgroud)
htpasswd的
songkick:isS1rCTQE/p8E
Run Code Online (Sandbox Code Playgroud)
我也尝试过AuthUserFile /.htpasswd(即没有"webroot",这是它在文件管理器中的文件夹的名称),但这也不起作用.
我正在使用GoDaddy托管btw,如果这有所不同.
非常感谢任何帮助 - 我不是开发人员所以不理解许多帮助文章中使用的很多术语!
我想知道为什么即使是相同的用户名和相同的密码,htpasswd每次输出一个新的哈希?我试着找到这个问题的答案,但不能.