最受支持的方式来保护flatfiles(sqlite db)免受HTTP访问?

Pat*_*ien 2 database sqlite http flat-file

我正在开发一个使用SQLite作为数据库管理系统的PHP应用程序,MySQL和PostgreSQL等不是一个替代方案(虽然我真的很想使用pgsql),因为我希望设置非常适合初学者和零头痛一样.现在很多人都使用共享主机,而且很多人只提供对htdocs目录的直接FTP访问,但不能超过它.这意味着客户必须将SQLite-Database-File放在他们的htdocs中,这意味着全世界都可以访问它,任何人都可以下载它.

为客户提供某种保护的最佳方法是什么,这很简单并且在所有HTTP服务器上都受支持?

Jer*_*ley 5

您可以使用.htaccess文件并锁定数据库名称,以便无法从外部访问.许多服务器已经为所有以"."开头的文件名执行此操作.这当然适用于Apache,但您仍需要修复其他Web服务器.

你最好的选择是真正设置它,以便它可以托管在htdocs之上.也许您可以使用检查文档根目录的安装脚本,并在可能的情况下将sqlite文件移动到更高的目录.

不幸的是,因为sqlite是由与Web服务器相同的用户读取和写入的,所以没有简单的方法可以将其从外部访问锁定.隐藏它并移动它是我能想到的唯一真正的解决方案.