SMTP Problem OJS 2.4.8

Hi there,

Our journal employs OJS 2.4.8. I do not have any problem related to sending e-mails to the domains such as or However, our e-mails are not sent to domain and our log transactions show the error message as given below:

mod_fcgid: stderr: OJS SMTPMailer: Did not receive expected 250 (3)

refer: login/lostPassword

Do you have any solution suggestions for this issue?


What do you think @ctgraham?

What SMTP server are you using for outbound mail? It is rejecting your attempts to address mail to specific addresses when you get the error “Did not receive expected 250”. The SMTP server itself will be sending back additional details, for example: “550 You are not allowed to send mail to…”

This would be particularly likely if you were using as your SMTP server, and were trying to send mail from addresses from domains which don’t whitelist your server as a sender. Have you configured to use force_default_envelope_sender to require OJS send email as a trusted address?

Hi @ctgraham,

We using is;


; Use SMTP for sending mail instead of mail()
smtp = On

; SMTP server settings
smtp_server = “ssl://”
smtp_port = 465

; Enable SMTP authentication
; Supported mechanisms: PLAIN, LOGIN, CRAM-MD5, and DIGEST-MD5
smtp_auth = LOGIN
smtp_username = “
smtp_password = “xxx”

; Allow envelope sender to be specified
; (may not be possible with some server configurations)
allow_envelope_sender = On

; Default envelope sender to use if none is specified elsewhere
default_envelope_sender = “

; Force the default envelope sender (if present)
; This is useful if setting up a site-wide noreply address
; The reply-to field will be set with the reply-to or from address.
force_default_envelope_sender = On

; Enable attachments in the various “Send Email” pages.
; (Disabling here will not disable attachments on features that
; require them, e.g. attachment-based reviews)
enable_attachments = On

; Amount of time required between attempts to send non-editorial emails
; in seconds. This can be used to help prevent email relaying via OJS.
time_between_emails = 7200

; Maximum number of recipients that can be included in a single email
; (either as To:, Cc:, or Bcc: addresses) for a non-priveleged user
max_recipients = 50

; If enabled, email addresses must be validated before login is possible.
require_validation = Off

; Maximum number of days before an unvalidated account expires and is deleted
validation_timeout = 50

The configuration looks sane, so the next step would be to identify what specifically the SMTP server is complaining about.

Options include:

  • Opening a support ticket with Zoho, describing an example failed sending attempt.
  • Adding some PHP code here to try to capture the original error from the SMTP server.
  • Manually connecting to the SMTP server from your server to view the original error message.

It has the same configuration as the journal that employs OJS Both of these journals are hosted by the same server and we are experiencing this error only in the OJS 2.4.8. I think the problem is related to source code but i could not find the solution.

Interesting. Between 2.4.7-1 and 2.4.8-5 the only relevant change seems to be moving the forced envelope sender from the From to a Return-Path.

This seems unlikely to me to be the culprit, but I can’t discount it. What specific version of 2.4.8 are you running? Are the OJS user addresses identical in both installations, in addition to the default_envelope_sender?

Two separate journals are running in two different domains and also in two different servers. There is not any problem about e-mail delivery in the journal that employs OJS The problem is encountered in the journal that utilizes OJS Both of these journals have separate Zoho accounts.

If the domain and server and zoho accounts are different, you’ll want to follow one of the options I listed earlier for additional debugging.

There isn’t a difference in the mailer code between 2.4.7-1 and 2.4.8-0.