LAMP之路

不积跬步,无以至千里!

防止 SQLite 数据库被下载的方法

2012-10-18 一抹阳光 操作系统

国外有非常多的开源php系统都支持sqlite,作为小型站,sqlite小巧、高速、免安装。
MyBB phpBB PunBB FluxBB drupal joomla都可支持sqlite。
网站装上后,问题来了,直接访问sqlite数据库文件是可以下载到的。

那么找到一下解决方案:

1.将SQLite放在WEB不能访问到的地方。
有些虚拟主机一般也都会提供一个单独目录,供用户放一些不想被下载或访问的文件,所以放在这个目录很安全。
2.如果PHP是作为CGI或者APACHE的单独进程运行,那么可以修改一下SQLite数据库文件的权限,比如0600。
3.假如WEB服务器是APACHE,并且支持自定义.htaccess,那么可在.htaccess文件中加入以下内容:

<FilesMatch “.sqlite$”>
Deny from all
</FilesMatch>

其中.sqlite即为你的数据库文件的扩展名。