允许访问www / html文件夹之外的文件

时间:2018-06-19 03:46:37

标签: php apache ubuntu

我有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 个答案:

答案 0 :(得分:1)

这里的问题是Linux权限,而不是URL映射,因为PHP在后端的服务器中运行。

如果您将PHP作为Apache模块运行(mod_php或类似的东西),它将与Apache用户和组(通常为www-data:www-datanobody:nogroup一起运行,它取决于LAMP配置)。

因此,您应该授予权限并更改user.db文件及其树的所有权,例如:

chmod o+x /root
chmod o+x /root/database
chown www-data:www-data /root/database/user.db 

您可以阅读有关权限here的更多信息。