基本的php密码保护

时间:2013-06-04 10:47:15

标签: php apache password-protection

我现在拥有的是一个apache服务器,它包含一些包含图片和一些家庭视频的文件夹。我有端口转发,并在我输入我的IP时显示文件夹。我唯一的问题是,任何人都可以从世界各地访问它。我发现这个PHP代码在线,所以我可以密码保护这些文件:

<?php 

// Define your username and password 
$username = "someuser"; 
$password = "somepassword"; 

if ($_POST['txtUsername'] != $username || $_POST['txtPassword'] != $password) { 

?> 

<h1>Login</h1> 

<form name="form" method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>"> 
    <p><label for="txtUsername">Username:</label> 
    <br /><input type="text" title="Enter your Username" name="txtUsername" /></p> 

    <p><label for="txtpassword">Password:</label> 
    <br /><input type="password" title="Enter your password" name="txtPassword" /></p> 

    <p><input type="submit" name="Submit" value="Login" /></p> 

</form> 

<?php 

} 
else { 

?> 

<p>This is the protected page. Your private content goes here.</p> 

<?php 

} 

?> 

我找到了说它放置我的私人内容的行,但我不明白该怎么做。即时通讯不试图保护任何HTML或PHP页面我试图保护几个文件夹。 PS我可以通过ftping到我的服务器来访问文件,但我希望能够从任何浏览器访问它们。

1 个答案:

答案 0 :(得分:6)

尝试学习htpasswd并实施它。

您可以通过this创建htpasswd文件。只需输入用户名和密码,即可生成htpasswd文件的条目。您可以使用htaccces Authentication generator创建一个密码保护您的站点或目录的htaccess文件。此htpasswd生成器创建使用MD5算法进行哈希处理的密码,这意味着您可以将其用于托管在任何平台(包括Windows和Linux)上的站点。您还可以在自己的服务器上使用PHP创建htpasswd密码 - 这种技术仅适用于Linux。阅读有关htpasswd文件的更多信息。

从此处详细了解htpasswd