- Edited
I've yet to succeed in setting up SMTP..
Office.com shows the following settings should work:
Server name: smtp.office365.com
Port: 587
Encryption method: STARTTLS
output from running "php -i" (only lines related to ssl):
Registered Stream Socket Transports => tcp, udp, ssl, tls, tlsv1.0, tlsv1.1, tlsv1.2
curl
SSL => Yes
MULTI_SSL => No
SSL Version => OpenSSL/1.1.1c
imap
SSL Support => enabled
mysqlnd
core SSL => supported
extended SSL => not supported
openssl
OpenSSL support => enabled
OpenSSL Library Version => OpenSSL 1.1.1c 28 May 2019
OpenSSL Header Version => OpenSSL 1.1.1c 28 May 2019
Openssl default config => C:\usr\local\ssl/openssl.cnf
Directive => Local Value => Master Value
openssl.cafile => no value => no value
openssl.capath => no value => no value
pgsql
SSL support => enabled
Phar
OpenSSL support => enabled
Different error displayed through osTicket after adding tls:// to smtp host
Sending Email via SMTP
Failed to connect to tls://smtp.office365.com:587 [SMTP: Failed to connect socket: stream_socket_client(): unable to connect to tls://smtp.office365.com:587 (Unknown error) (code: -1, response: )]
from "php_errors.log":
PHP Warning: stream_socket_client(): SSL operation failed with code 1. OpenSSL Error messages:
error:1408F10B:SSL routines:ssl3_get_record:wrong version number in C:\inetpub\wwwroot\osticket\include\pear\Net\Socket.php on line 166
PHP Warning: stream_socket_client(): Failed to enable crypto in C:\inetpub\wwwroot\osticket\include\pear\Net\Socket.php on line 166
PHP Warning: stream_socket_client(): unable to connect to tls://smtp.office365.com:587 (Unknown error) in C:\inetpub\wwwroot\osticket\include\pear\Net\Socket.php on line 166
osticket\include\pear\Net\Socket.php lines 148-171
if ($options && function_exists('stream_context_create')) {
if ($this->timeout) {
$timeout = $this->timeout;
} else {
$timeout = 0;
}
$context = stream_context_create($options);
// Since PHP 5 fsockopen doesn't allow context specification
if (function_exists('stream_socket_client')) {
$flags = STREAM_CLIENT_CONNECT;
if ($this->persistent) {
$flags = STREAM_CLIENT_PERSISTENT;
}
$addr = $this->addr . ':' . $this->port;
$fp = stream_socket_client($addr, $errno, $errstr,
$timeout, $flags, $context); // <--- Line 166
} else {
$fp = @$openfunc($this->addr, $this->port, $errno,
$errstr, $timeout, $context);
}
} else {