centos 7,php 7.2权限被apache2.4拒绝

5m1hhzi4  于 2021-06-18  发布在  Mysql
关注(0)|答案(3)|浏览(1071)

当我试图通过apache执行到db的连接时,我不能通过pdo登录mysql,但是在cli上它可以正常工作
symfony 4.1 controller 我已经插入了这个字符串

new PDO('mysql:host=db;dbname=test_db', 'xyz', 'uzzzxxxx');

它给例外,但在 Symfony4.1 command 同一行工作,我可以查询数据库。什么会导致这种情况?控制器和命令在一个包中

tvokkenx

tvokkenx1#

我相信对于apache,您正在寻找localhost作为您的主机。

new PDO('mysql:host=localhost;dbname=test_db', 'xyz', 'uzzzxxxx');

虽然我不熟悉symfony,但它可能使用不同的凭据,或者在检测到错误时将其设置为localhost,而apache没有。

eh57zj3b

eh57zj3b2#

你必须给apache允许写日志文件和上传文件吗?让我们和selinux好好玩。并设置适当的所有权和权限


# Ownership

苏多周apache:apache -r /data/www/html/sites/mysite光盘/data/www/html/sites/mysite

文件权限,递归

找到-类型f-exec chmod 0644{}\;

目录权限,递归

找到-类型d-exec chmod 0755{}\;

selinux在apache上提供文件,复活

sudo chcon-t httpd\u sys\u content\u t/data/www/html/sites/mysite-r

只允许写入特定目录

sudo chcon-t httpd\u sys\u rw\u content\u t/data/www/html/sites/mysite/logs-r sudo chcon-t httpd\u sys\u rw\u content\u t/data/www/html/sites/mysite/uploads-r
httpd\u sys\u content\u t–允许apache提供这些内容,httpd\u sys\u rw\u content\u t–允许apache写入这些路径。
就这样!我喜欢和你分享!

wydwbb8l

wydwbb8l3#

在我的例子中,错误是selinux通过禁用它,现在它工作的情况下,有人想检查有没有教程https://linuxize.com/post/how-to-disable-selinux-on-centos-7/

相关问题