我有LAMP服务器
服务器版本:Apache / 2.4.29(Ubuntu)
PHP:PHP 7.2.5-0ubuntu0.18.04.1
我需要在www / html文件夹之外给出一个php SQLITE3访问数据库 . 现在我的文件系统看起来像这样 .
/root
./database
user.db
/var
./www
./html
index.html
reg.php
user.db必须位于/ root / database中,所以将它放在var / www / html中对我来说不是解决方案 .
所以我需要为Apache或php提供访问此文件夹的权限 . 我在这里找到了一些信息https://httpd.apache.org/docs/2.4/urlmapping.html,但是没有得到这个如何工作以及我需要把它放在哪里?
1 回答
这里的问题是Linux权限,而不是URL映射,因为PHP在后端的服务器中运行 .
如果您将PHP作为Apache模块运行(
mod_php
或类似的东西),它将与Apache用户和组一起运行(通常为www-data:www-data
或nobody:nogroup
,它取决于LAMP配置) .因此,您应该授予权限并更改
user.db
文件及其树的所有权,例如:您可以阅读有关权限here的更多信息 .