制作一个 PHP 可以读取的安全文件?
我有一个类似这样的文件,它是一个用户数据库(udb.htm):
user1:pwd1
user2:pwd2
user3:pwd3
类似的东西。我想保护此文件并通过 file_get_contents("udb.htm");
方法(但不是浏览器窗口)将其提供给 PHP。谢谢!
I have a file sort of like this, it's a user database (udb.htm):
user1:pwd1
user2:pwd2
user3:pwd3
something along the lines of that. I would like to secure this file and make it available for PHP via the file_get_contents("udb.htm");
method, but not a browser window. Thanks!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
您可以:
you can:
将文件放在 Web 根目录之外。例如,在包含
public_html
的目录中。 PHP 可以访问它(以及系统上的任何其他文件),但您无法从 Web 访问它。Put the file outside of the web root. For instance, in the directory that contains
public_html
. PHP can access it (and any other file on the system), but you can't get to it from the web.将文件移至 PHP 仍可访问但 Web 客户端无法访问的文件夹中。
Move the file into a folder still accesible to PHP but not web clients.
您想要做的是将数据库放在网络路径下方。例如,如果您的网站位于 www.example.com 并且它指向: /var/www/html
那么您可以将密码文件放入 /var/www/password/udb.htm
然后从您的 php 脚本访问它as file_get_contents("../../password/udb.htm")
您的脚本可以访问该文件,但您的 Web 服务不能。
What you want to do is put the database below the web path. So for example, if your website is at www.example.com and it points to: /var/www/html
Then you can put your password file into /var/www/password/udb.htm
Then access it from your php script as file_get_contents("../../password/udb.htm")
Your script can access the file, but your web service will not.
这会在打开文件之前更改文件的权限,并在关闭文件时删除授予权限,请确保网络服务器对该文件的权限。
This changes the permissions of your file before open, and remove grants when you close the file, be sure about webserver permissions over the file.