我正在使用PHPMailer库发送电子邮件。我已将代码上传到不同的服务器,现在电子邮件不适用于大小超过100 KB的附件。这是错误
“无法实例化邮件功能。”
适用于小于100 KB的附件。似乎服务器上可能存在一些大小限制。如果是这种情况,那么在哪里查看?
我正在使用Windows服务器,以下是php邮件程序中的设置
$mail = new PHPMailer();
$mail->isMail();
$mail->isHTML(true);
$mail->Host = 'localhost';
$mail->SMTPAuth = false;
$mail->AddAddress('whoto@otherdomain.com', 'John Doe');
$mail->SetFrom('donotreply@yourdomain.com', 'First Last');
$mail->Subject = 'PHPMailer Test Subject via mail(), advanced';
$mail->AltBody = 'To view the message, please use an HTML compatible email viewer!';
$mail->MsgHTML(file_get_contents('contents.html'));
$mail->AddAttachment('path/to/attachment'); // attachment
$mail->Send();
请任何人都可以解决这个问题。我已经在互联网上搜索了上述问题,但无法解决这个问题。
答案 0 :(得分:1)
有一些方法。请关注以下任何一项 -
方法1:编辑.htaccess
php_value upload_max_filesize 10M
php_value post_max_size 20M
php_value memory_limit 32M
方法2:编辑php.ini
upload_max_filesize = 10M
post_max_size = 20M
memory_limit = 32M
方法3:Suhosin(可选)
默认情况下,许多服务器上都没有安装(最新版本的Debian,Ubuntu和FreeBSD默认安装Suhosin)。使用phpinfo()来确定是否启用了suhosin。
<?php
phpinfo();
?>
如果启用则 -
suhosin.memory_limit=32M
您可以根据需要更改数值。但最好保持较小,以便您的服务器CPU不会受到太多负载以及您的主机空间限制。
您也可以查看 -
max_execution_time = 240
max_input_time = 240