安装/配置
在线手册:中文  英文

运行时配置

这些函数的行为受 php.ini 中的设置影响。

Mail 配置选项
名字 默认 可修改范围 更新日志
mail.add_x_header "0" PHP_INI_PERDIR 自 PHP 5.3.0 起生效
mail.log NULL PHP_INI_PERDIR 自 PHP 5.3.0 起生效
SMTP "localhost" PHP_INI_ALL  
smtp_port "25" PHP_INI_ALL 自 PHP 4.3.0 起可用
sendmail_from NULL PHP_INI_ALL  
sendmail_path NULL PHP_INI_SYSTEM  
有关 PHP_INI_* 样式的更多详情与定义,见 配置可被设定范围

这是配置指令的简短说明。

mail.add_x_header bool

Add X-PHP-Originating-Script that will include UID of the script followed by the filename.

mail.log string

The path to a log file that will log all mail() calls. Log entries include the full path of the script, line number, To address and headers.

SMTP string

仅用于 Windows:PHP 在 mail() 函数中用来发送邮件的 SMTP 服务器的主机名称或者 IP 地址。

smtp_port int

仅用于 Windows:SMTP 服务器的端口号,默认为 25。自 PHP 4.3.0 起可用。

sendmail_from string

在 Windows 下用 PHP 发送邮件时的“From:”邮件地址的值。该选项同时设置了 “Return-Path:”头。

sendmail_path string

sendmail 程序的路径,通常为 /usr/sbin/sendmail/usr/lib/sendmailconfigure 脚本会尝试找到该程序并设定为默认值,但是如果失败的话,可以在这里设定。

不使用 sendmail 的系统应将此指令设定为其邮件系统提供的 sendmail 替代程序,如果有的话。例如,» Qmail 用户通常可以设为 /var/qmail/bin/sendmail/var/qmail/bin/qmail-inject

qmail-inject 不需要任何选项就能正确处理邮件。

此指令也可用于 Windows。如果设定,smtpsmtp_portsendmail_from 都被忽略并运行指定的命令。


安装/配置
在线手册:中文  英文

用户评论:

mike dot castrodemaria at gmail dot com (2013-06-20 14:00:28)

You can set on apache2 a "per domain" default address in apache conf VirtualHost section too.
Juste add : php_admin_value sendmail_path "/usr/sbin/sendmail -t -i -fno-reply@php.net -Fno-reply"
change to your own email choice instead no-reply@php.net .
I hope this helps,
Mike

blueshibuyadream at gmail dot com (2013-03-28 12:27:12)

On Darwin OS such as OSX (current one: 10.8.3) you need to add a specific command and option to the sendmail_path constant if you have downloaded and installed a mamp with a stack.
Indeed you can see the required libraries for PHP, Apache, MySQL in "common/lib" folder. The problem is when you run an external command using these libraries, for example "sendmail". It could be a problem if it gets the stack libraries and not the system ones (different versions, etc).
The "env -i" command clean the Stack environment variables and run "sendmail" with the system libraries.
Hope this helps.

rgdobie at conwave dot com dot au (2013-02-22 06:46:46)

Under Windows, I found sendmail_from needed to be a valid email address which has been defined on the mail server being addressed.

A Austin (2012-07-11 17:40:45)

For linux you can over-ride the default "From" for the outgoing emails by including in php.ini this line:
sendmail_path = "/usr/sbin/sendmail -t -i -f fromMe@blah.com"
The path should work for most linux installations.

stuart at horuskol dot net (2012-02-16 01:25:29)

The mail.add_x_header configuration value is set to "On" in the default production php.ini (although the default value of this setting is Off)

Robert (2011-04-25 11:09:32)

Despite what this page says about the "SMTP" and "smtp_port" settings being used only under Windows, all Drupal sites use these settings to send email, regardless of which OS they're running in.

易百教程