淘主机 发表于 2012-5-16 14:47:46

解决lnmp0.9不能发送邮件问题(fsockopen不支持)

部分用户升级lnmp0.9后发现不能发邮件了,提示连接不到stmp,翻了很久,终于找到了原因,原来是lnmp0.9开始,PHP禁用了pfsockopen与fsockopen函数,导致php不能发送邮件。

类似的情况还有Discuz!无法安装,到第三步提示,如图:

fsockopen()   不支持   该函数需要 php.ini 中 allow_url_fopen 选项开启。请联系空间商,确定开启了此项功能
pfsockopen()   不支持   该函数需要 php.ini 中 allow_url_fopen 选项开启。请联系空间商,确定开启了此项功能



解决办法

vi /usr/local/php/etc/php.ini
查找到disable_funtion后边的:pfsockopen与fsockopen函数,并且删除掉。

然后重启lnmp

/root/lnmp restart
这样就解决了。

延伸阅读:

Windows系统的IIS有的时候也会遇到类似问题。这种情况,直接到C:\Windows目录找到PHP.ini,同样删除上述两个删除的禁用,即可解决。

带来的问题:

这样操作后,一旦程序有问题的话,会导致PHP-DOS的漏洞,导致服务器对外UDP攻击,尤其是DEDE等程序,经常暴这种漏洞。

所以顺利安装完毕后建议关闭该功能。

参考:

PHP-UDP-DOS漏洞的解决与防范DDOS(叫停fsockopen)
http://bbs.taohost.net/thread-954-1-1.html

淘主机 发表于 2012-5-16 14:48:40

LNMP简介以及安装教程等详细资料
http://bbs.taohost.net/thread-994-1-1.html
页: [1]
查看完整版本: 解决lnmp0.9不能发送邮件问题(fsockopen不支持)