php教程php不能解析域名怎么办

 所属分类:php教程

 浏览:94次-  评论: 0次-  更新时间:2022-12-02
描述:更多教程资料进入php教程获得。 php不能解析域名的解决办法:1、用terminal命令行终端运行“# php -r "echo(gethostbyname('...&#39...
更多教程资料进入php教程获得。

php不能解析域名的解决办法:1、用terminal命令行终端运行“# php -r "echo(gethostbyname('...'));";”命令;2、将“libnss_dns.so.2 libnss_files.so.2 libresolv.so.2”复制到虚拟主机目录的lib下;3、通过“# amh php restart xxx.com”重启php即可。

php入门到就业线上直播课:进入学习
Apipost = Postman + Swagger + Mock + Jmeter 超好用的API调试工具:点击使用

本教程操作环境:linux5.9.8系统、PHP8.1版、Dell G3电脑。

php不能解析域名怎么办?

关于PHP中解析域名不成功的问题

用虚拟主机面板管理系统的注意了,尤其是amh面板!!

这几天折腾死我了,装了amh面板之后,所有用到域名解析的函数全部失败,比如gethostbyname, curl, 发邮件等等功能,只要url是域名的,全部失败,换成ip地址就可以,一开始还以为是dns的问题,查了一下,用的是8.8.8.8和8.8.4.4,而且ping那些域名也能正确返回ip地址,nslookup也正常,最TM诡异的是,用terminal命令行终端运行:

# php -r "echo(gethostbyname('www.baidu.com'));";
登录后复制

居然是可以返回ip的,于是把目标瞄准amh,应该是它的问题了,上网找了很久很久,问过很多人,都没有找到解决方案,后来无意中了解了chroot这个玩意,百度了一下,发现这东西是将系统环境切换到指定的一个目录,目录外的系统环境都用不了了,包含dns解析,开始慢慢明朗了,于是查了一下解析dns需要用到哪些lib,主要是这三个:

libnss_dns.so.2  libnss_files.so.2  libresolv.so.2
登录后复制

现在,重点来了,amh面板的,遇到相同问题的看过来,cd到你的虚拟主机目录:/home/wwwroot/xxx.com/,下面有etc, lib, usr, web, tmp等等目录,将上面说的三个lib copy到你的虚拟主机目录的lib下

# cp /lib/i386-linux-gnu/libnss_* /home/wwwroot/xxx.com/lib/
登录后复制

现在再试一下,是不是成功了?

唉,说多了都是泪啊...

-----------------------------

PS: 最后一步完成后记得重启php,amh的,直接命令:

# amh php restart xxx.com
登录后复制

推荐学习:《PHP视频教程》

以上就是php不能解析域名怎么办的详细内容,更多请关注zzsucai.com其它相关文章!

 标签: 域名,php,
积分说明:注册即送10金币,每日签到可获得更多金币,成为VIP会员可免金币下载! 充值积分充值会员更多说明»

讨论这个素材(0)回答他人问题或分享使用心得奖励金币

〒_〒 居然一个评论都没有……

表情  文明上网,理性发言!