使用 php 密码保护没有数据库访问权限的页面
是否可以在没有数据库访问权限的情况下对页面进行密码保护?我可能只有几页。但我应该能够更改密码并保存会话等。而且我想要一种安全的方式,因为它适用于生产站点!
md5 之后如何存储在 config.php 中:
<?php
username="admin";
password="1a1dc91c907325c69271ddf0c944bc72";
?>
如果这是一个好主意,有没有一种方法可以限制仅从一个脚本访问此 php 称为 check.php 或其他什么?
Is it possible to password protect a page without db access? I may have only few pages. But I should be able to change password and also save sessions etc. And I want a secure way as it's for production site!
How is it to store in a config.php after md5:
<?php
username="admin";
password="1a1dc91c907325c69271ddf0c944bc72";
?>
If this is a good idea, is there a way to restrict access to this php from only one script
called check.php or something?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
当然可以,为什么不呢?您可以在无法访问的目录(受 .htaccess 保护或位于 www 根目录之外)中使用平面文件,并将其用作数据库。
这是我创建的一个简单的登录类:
注意:如果您要在实际服务器中使用它,您确实应该关闭错误报告。这可以通过调用 error_reporting() 或添加 '@ 来完成' 在
file_get_contents
和file_put_contents
前面(即:因此它变成@file_get_contents
)使用示例: http://left4churr.com/login/
Sure, why not? You can use flat files in inaccessible directory (protected by .htaccess or out of the www root) and use that as a database.
Here's a simple login class I've whipped up:
NOTE: You really should turn off error reporting if you are going to use this in an actual server. This can be done by calling error_reporting() or by adding '@' in front of
file_get_contents
andfile_put_contents
(ie: so it turns into@file_get_contents
)Usage example: http://left4churr.com/login/
您应该使用
.htaccess
来执行此操作。您还可以通过.htaccess
保护您的敏感 php 文件,例如:You should use
.htaccess
to do that. You also can protect by.htaccess
your sensible php files, with something like :您可以使用使用 PHP 进行 HTTP 身份验证。
PHP-docu 中提供了非常好的示例。
You could use HTTP authentication with PHP.
Very good examples present in PHP-docu.
实际上数据库与密码保护无关。
您可以直接在脚本中写入登录名和密码并保存在数据库中。
无需限制对 php 文件的访问。通过 HTTP 调用,它将只是空白页面,仅此而已。
所以,这样存储就可以了。
对于甚至不使用数据库的网站来说已经足够了。
Actually a database have nothing to do with password protection.
you can write login and password directly in your script as well as keeping in in the database.
There is no need in restricting access to your php file. Being called over HTTP, it will be just blank page and nothing more.
So, it's all right to store it that way.
Quite enough for the site that even don't use a database.