我有以下代码来测试网站是否可以通过php发送邮件:
<?php
ini_set( 'display_errors', 1 );
error_reporting( E_ALL );
$from = "emailtest@YOURDOMAIN";
$to = "YOUREMAILADDRESS";
$subject = "PHP Mail Test script";
$message = "This is a test to check the PHP Mail functionality";
$headers = "From:" . $from;
mail($to,$subject,$message, $headers);
echo "Test email sent";
?>
我已将此php文件上传至www.mywebsite.com/data/iq/testing-email.php
当我运行脚本时,我收到以下错误:
警告:mail():无法连接到“localhost”端口25的邮件服务器,验证php.ini中的“SMTP”和“smtp_port”设置,或者使用C:\ mywebsite.com \ data \中的ini_set()第9行的iq \ test-email.php
我的问题是,当网站已经存在时,为什么错误显示C:\ file目录?
作为参考,此网站在Microsoft IIS服务器上运行,如果有任何不同,则会有SSL。
答案 0 :(得分:2)
当您使用mail()时,您的PHP脚本会尝试连接到外部SMTP以传递您的电子邮件,因此您必须配置有效的邮件。
默认情况下,它会尝试连接到localhost,但网络服务器显然没有运行SMTP服务器,因此您应该要求您的提供商使用正确的SMTP,并将其设置为:
ini_set('SMTP','smtp.yourprovider.cxm');
ini_set('smtp_port',25);
关于你的第二个问题,C:\ mywebsite.com \可能是你托管文件的服务器文件夹,所以对我而言看起来很正常。