通过我的网站输入http://www.mywebsite.com/myfile并且服务器在debian上运行,我可以访问文件。
我想在尝试访问上一个网址时使用.htaccess和.htpasswd进行身份验证。
我对.htaccess很新,我尝试用doc配置它,但它似乎不起作用,因为当我尝试没有任何改变时,当我检查错误日志时我得到了:
[错误] [客户端IP]客户端被服务器配置拒绝: /home/file1/myfile/www/.htaccess
我的.htaccess的内容是:
<Directory /home/file1/myfile/www/>
AuthUserFile /home/file1/myfile/.htpasswd
AuthGroupFile /dev/null
AuthName "My authentication"
AuthType Basic
Require valid-user
Otions Indexes FollowSymLinks Multiviews
AllowOverride All
Order allow,deny
allow from all
Redirect permanent /.htaccess http://www.mywebsite.com/myfile
ServerSignature Off
</Directory>
我怎么能解决这个问题?
答案 0 :(得分:0)
您不能在htaccess文件中使用<Directory>
容器。删除它们,以便您拥有:
AuthUserFile /home/file1/myfile/.htpasswd
AuthGroupFile /dev/null
AuthName "My authentication"
AuthType Basic
Require valid-user
Options Indexes FollowSymLinks Multiviews
AllowOverride All
Order deny,allow
deny from all
Redirect permanent /.htaccess http://www.mywebsite.com/myfile
ServerSignature Off
(你Otions
拼错了)
此外,通过查看您的错误,您看起来好像是在尝试直接访问htaccess文件,而不是myfile
。服务器上可能有额外的配置拒绝访问htaccess文件(或所有以.
开头的文件。)
答案 1 :(得分:0)
似乎删除et再次创建用户足以修复FTP连接问题。
我使用以下内容修改了我的全局apache配置:
DirectoryIndex index.html index.htm index.xhtml index.php index.txt
ServerName debian.domain.tld
#ServerName localhost
HostnameLookups Off
ServerAdmin myadressemail
UserDir www
UserDir disable root
<Directory />
Options -Indexes FollowSymLinks
AllowOverride All
</Directory>
ServerSignature Off
现在我的.htaccess是:
AuthUserFile /home/file1/myfile/.htpasswd
AuthGroupFile /dev/null
AuthName "My authentification"
AuthType Basic
Require user user1
但我仍然没有得到认证问题,我做错了什么?