目前,我设置了一个 apache 服务器(它正在运行一个 Intranet 站点),但我有点卡住了。当用户转到该页面时,它会运行 mysql 查询并用于INTO OUTFILE
从该查询生成管道分隔文件。我遇到的问题是 SELinux 阻止 mysql 将文件写入我想要的目录。
我要写入的目录是
/var/www/html
这样当它生成时,用户将收到一个指向该文件的链接,以便他们可以直接从浏览器下载它。
我尝试将目录的上下文设置为
mysqld_etc_t
mysqld_home_t
mysqld_var_t
也试过了,
var_t
但是我不确定我是否正确地执行了 var_t。
我已经尝试将 SELinux 设置为 Permissive 以进行测试,并且 mysql 能够成功写入该文件夹,所以我知道所有阻碍我的都是 SELinux。
我不想禁用 SeLinux,也不想将 mysqld 设置为允许运行。所以我的问题变成了我必须做什么才能允许mysql访问写入该文件夹?即使有人能指出我正确的方向,也将不胜感激。