gpt4 book ai didi

php - CentOS 7,通过 apache 的 php 脚本不解析主机名。如果我直接使用 ip 它可以工作

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

我已经在 CentOS 7 上安装了 LAMP 堆栈。

如果我尝试从命令行通过 php 解析名称,它可以工作,但如果我通过 Web 服务器执行该脚本,它不会解析名称。如果我直接使用 ip 它可以工作,在每种情况下。

例如:

$ip = gethostbyname('www.google.com');    
echo "GOOGLE IP = " . $ip; // it shows IP only via php-cli, not thru apache

任何想法?

编辑:禁用 SE 强制它有效。了解如何配置它以启用 SE 强制执行将很有用。

最佳答案

将 SELinux 设置为允许
setenforce 0
确保安装了 selinux-policy、selinux-policy-devel、setroubleshoot-server、setroubleshoot
yum install selinux-policy, selinux-policy-devel, setroubleshoot-server, setroubleshoot -y
然后尾部消息文件和 grep 的 sealert
tailf /var/log/messages | grep sealert
您的 SELinux 问题将以以下形式吐出

hostname setroubleshoot: SELinux is preventing httpd (httpd_t) "getattr" to /var/www/html/file1 (samba_share_t). For complete SELinux messages. run sealert -l 84e0b04d-d0ad-4347-8317-22e74f6cd020

所以你只需运行 sealert -l 84e0b04d-d0ad-4347-8317-22e74f6cd020查看您的 SELinux 问题

一旦你认为你已经解决了问题,重新启用 SELinux setenforce 1并检查您的问题是否已解决。如果没有,则重复这些步骤。

有关 sealert 的更多信息,请访问 Red Hat's website ,只是不要禁用 SELinux。

关于php - CentOS 7,通过 apache 的 php 脚本不解析主机名。如果我直接使用 ip 它可以工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38542852/

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