密码保护我的网站(Password Protect My Website)

2019-08-04 23:27发布

我最近创建了使用亚马逊的Linux AMI一个新的Amazon EC2实例。 什么是强制访问域允许访问网站之前输入用户名/密码的用户的最佳方法是什么?

我目前使用的Apache HTTP服务器,并看到了一些资源,表明我需要使用.htaccess文件,但一直在寻找一个更简洁的解释。

Answer 1:

如果你正在寻找的是服务器级别的访问控制(即没有修改您的应用程序),你可以使用基本身份验证。 这是在Apache网页服务器级别执行,如果使用.htaccess文件期望可以在目录由目录为单位来控制。

下面是Apache的文档的链接

http://httpd.apache.org/docs/2.2/howto/auth.html

下面是如何实现一个简单的例子

http://doc.norang.ca/apache-basic-auth.html



Answer 2:

通过密码保护的.htaccess网站

  1. 创建于要被保护的文件夹下面的.htaccess文件:

     AuthType Basic AuthName "Password Protected Area" AuthUserFile /var/www/admin/.htpasswd Require valid-user 
  2. 创建一个.htpasswd在同一文件中,或优选的文件夹即外/var/www

    为了演示,我用上面的虚拟路径。 该htpasswd文件应该包含您的密码盐使用这种发电机来创建.htpasswd文件。

  3. 假设你正在使用Ubuntu,则必须通过这个文件,使htaccess的覆盖: /etc/apache2/sites-available/default

    更改设置“AllowOverride无”到有“AllowOverride全部”中:

     <Directory /var/www/> Options Indexes FollowSymLinks MultiViews AllowOverride None Order allow,deny allow from all </Directory> 

注意:您可能需要通过命令行的SSH编辑: sudo nano /etc/apache2/sites-available/default

  1. sudo /etc/init.d/apache2 reload


Answer 3:

你需要生成一个密码,用户名+口令字符串进行身份验证,并将其写入文件。

  • 您可以使用HTTP密码生成工具来做到这一点。
  • 复制粘贴你到一个新文件(htpasswd的)任何地方你的Webroot公司之外取得的字符串(更好的给用户的主目录中的任意位置保留)。
  • 添加以下行.htaccess文件。
 AuthType Basic AuthName "Require Authentication" AuthUserFile [PATH_TO_FILE]/.htpasswd Require valid-user 
  • 如果密码没有被触发,检查.htaccess文件的权限。

  • 如果authetication失败,请检查htpasswd文件是否存在等在指定的位置。 (请确保您的用户帐户对htpasswd文件足够的权限读取)

  • 你并不需要重新启动服务器,以实现这一目标。

希望这可以帮助。



Answer 4:

gnerate加密的密码,并添加到htpasswd文件

$ htpasswd -nbm username Password

.htaccess文件条目

AuthType Basic
AuthName "My Protected Area"
AuthUserFile /absolute/path/to/password/file
Require valid-user

欲了解更多详情,请通过这个博客帖子- iCodefy



文章来源: Password Protect My Website