做论坛网站建设,几乎都是用源程序,像discuz,或是phpwind 等,我们今天来看下 dz论坛为什么不能发送邮件,正常来说我们设置好邮件选项 就可以了, 但是某些原因 不能发送邮件,
我们来看一下,是什么原因,今天说的是,由于使用服务商主机造成的问题,是我们不能左右的,例如万网空间主机是不支持fsockopen()函数的,
dz 官方只给出了,1.0的解决方法, 我们看一下是怎样
打开sourcefunctionfunction_filesock.php这个文件
找到
-
if(function_exists('fsockopen')) {
-
$fp = @fsockopen(($ip ? $ip : $host), $port, $errno, $errstr, $timeout);
-
} elseif(function_exists('pfsockopen')) {
复制代码
修改成
-
if(function_exists('pfsockopen')) {
复制代码
|
|
这是dz 官方给出的1.0 的解决方法,
但是我们现在都是2.5 或是3.1 这个方法是不适用的, 我们了解发现,万网对此 也是有相关的解决方法的,
以下是万网给出的具体邮件回复如下:
尊敬的客户您好:
您的问题回复如下:
G享主机不支持fsockopen函数的解决方法 :fsockopen函数在NT系统下有漏洞,此漏洞会导致跨站攻击等危险,在微软出具修复方案前万网G主机修改此函数名为“pfsockopen”,同时推出纯LINUX系统的L享主机来完美支持这一函数。
fsockopen大多数应用是的获取远程页面数据,对于获取远程页面这种应用,PHP还有其他函数可以完美替代:
方法1:
<?php
$str = file("http://www.hichina.com/");
$count = count($str);
for ($i=0;$i<$count;$i++){
$file .= $str[$i];
}
echo $file;
?>
方法2:
<?php
$str = file_get_contents("http://www.hichina.com/");
echo $str;
?>
论坛网站制作中万网空间不支持fsockopen函数,导致不能发送邮件的方法你学会了吗