gpt4 book ai didi

apache - 出站连接( curl ,套接字)不适用于 apache 但以 root 身份工作

转载 作者:行者123 更新时间:2023-12-04 19:36:53 26 4
gpt4 key购买 nike

在最近对 linux 组件(带有 PLesk 17.8.11 的 CentOS v7)进行自动更新后,我的 web (php) 应用程序不再能够进行出站连接。
“curl”请求和 PHPMailer 都失败了; curl 返回没有内容的 http 代码 0,而 PHPMailer 说“SMTP Connect() 失败”。
从终端(root 用户)运行时,相同的语句/程序可以完美运行。换句话说,如果我编写一个执行“curl http://www.example.com”的简单程序并从终端运行它,它就可以工作;如果我从浏览器调用它,它不起作用。
任何使用 PHPMailer 发送邮件的程序也是如此。
SELinux 被禁用,因此它不依赖于 httpd_can_network_connect SELinux bool 值。

任何想法?

最佳答案

我找到了解决方案,但我并没有真正理解真正的原因是什么。默认情况下,我的 CentOS+Plesk 服务器禁用了 SELinux:我使用 SELINUX=permissive 将其更改为“启用”,然后更改了两个 SELinux bool 值:

setsebool -P httpd_can_network_connect on
setsebool -P httpd_can_sendmail on

即使 SELinux 处于仅警告模式,设置这两个 bool 值也可以解决问题。

关于apache - 出站连接( curl ,套接字)不适用于 apache 但以 root 身份工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50419947/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com