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.
Runtime Configuration
The behaviour of these functions is affected by settings in php.ini.
| Name | Default | Changeable | Changelog |
|---|---|---|---|
| mail.add_x_header | "0" | PHP_INI_PERDIR | Available since PHP 5.3.0. |
| mail.log | NULL | PHP_INI_PERDIR | Available since PHP 5.3.0. |
| SMTP | "localhost" | PHP_INI_ALL | |
| smtp_port | "25" | PHP_INI_ALL | Available since PHP 4.3.0. |
| sendmail_from | NULL | PHP_INI_ALL | |
| sendmail_path | "/usr/sbin/sendmail -t -i" | PHP_INI_SYSTEM |
Here's a short explanation of the configuration directives.
- 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
-
Used under Windows only: host name or IP address of the SMTP server PHP should use for mail sent with the mail() function.
- smtp_port int
-
Used under Windows only: Number of the port to connect to the server specified with the SMTP setting when sending mail with mail(); defaults to 25. Only available since PHP 4.3.0.
- sendmail_from string
-
Which "From:" mail address should be used in mail sent from PHP under Windows. This directive also sets the "Return-Path:" header.
- sendmail_path string
-
Where the sendmail program can be found, usually /usr/sbin/sendmail or /usr/lib/sendmail. configure does an honest attempt of locating this one for you and set a default, but if it fails, you can set it here.
Systems not using sendmail should set this directive to the sendmail wrapper/replacement their mail system offers, if any. For example, » Qmail users can normally set it to /var/qmail/bin/sendmail or /var/qmail/bin/qmail-inject.
qmail-inject does not require any option to process mail correctly.
This directive works also under Windows. If set, smtp, smtp_port and sendmail_from are ignored and the specified command is executed.
Some php.ini files place "sendmail_from" & "sendmail_path" in "[mail function]"
section where they are ignored.
