4

我现在拥有的是一个 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到我的服务器来访问文件来做到这一点,但我也希望能够从任何浏览器访问它们。

4

1 回答 1

7

尝试学习 htpasswd并实现它。

您可以通过此创建 htpasswd 文件。只需输入用户名和密码,即可生成 htpasswd 文件的条目。您可以使用htaccces 身份验证生成器创建一个 htaccess 文件,该文件将密码保护您的站点或目录。这个 htpasswd 生成器创建使用 MD5 算法散列的密码,这意味着您可以将它用于托管在任何平台上的站点,包括 Windows 和 Linux。你也可以在你自己的服务器上使用 PHP 创建 htpasswd 密码——不过这种技术只适用于 Linux。阅读有关 htpasswd 文件的更多信息。

从这里了解更多关于htpasswd的信息。

于 2013-06-04T10:55:59.090 回答