Introdução
Na página Configuração global, painel Servidor, existe uma opção para selecionar um agente de envio de email. A configuração predefinida é PHP Mail. Se esta não funcionar, pode ser aconselhável utilizar SMTP. Este utiliza o mesmo mecanismo que a sua aplicação de email. Existem várias configurações que precisa de acertar. Em resumo:
Vá a Configuração global e selecione o separador Servidor. Procure o painel Email perto da parte inferior do formulário.
- Serviço de envio de email definido como SMTP. Vários outros campos irão aparecer
- Servidor SMTP Por predefinição é localhost, mas é improvável que isso funcione. Tem de ser definido como o servidor que trata do seu email de saída, por exemplo, uma conta do Gmail.
- Porta SMTP A predefinição é 25. Verifique que esse é o valor que o seu Servidor SMTP espera.
- Segurança SMTP A predefinição é Nenhuma, mas é provável que precise de STARTTLS.
- Autenticação SMTP Pode não ser necessária se estiver a utilizar uma rede doméstica que espere que os emails de saída não necessitem de autenticação. Caso contrário:
- Utilizador SMTP e Senha SMTP insira os valores que utiliza para aceder à sua conta de email através da internet.
- Selecione o botão Enviar email de teste.
Utilizar o Gmail
Se tiver uma conta do Gmail funcional, pode utilizar o Gmail como o seu servidor de email, configurando-o na configuração global.
No separador servidor, defina o seguinte:
- Serviço de envio de email: SMTP
- Servidor SMTP: smtp.gmail.com
- Porta SMTP 465
- Segurança SMTP: SSL/TLS
- Autenticação SMTP: Sim
- Defina as duas linhas seguintes com as suas informações. Precisa de utilizar uma senha específica da aplicação (ASP), descrita abaixo.
- Nome de utilizador SMTP: o seu nome de utilizador do gmail
- Senha SMTP: a senha específica da aplicação (ASP) que gerou, descrita abaixo.
As seguintes também são combinações funcionais:
- Porta SMTP 587
- Segurança SMTP: STARTTLS
- Porta SMTP 25
- Segurança SMTP: STARTTLS
O módulo SSL não precisa de estar autorizado no Apache.
A extensão OpenSSL precisa de estar autorizada no PHP. Pode encontrar os detalhes na página de instalação do php.net.
Se estiver a utilizar o WAMP no Windows, o módulo openssl não está autorizado por predefinição e precisa de o autorizar. Para fazer isto:
- Abra o ficheiro php.ini e remova o comentário da linha
extension=php_openssl.dllremovendo o ponto e vírgula ; do início da linha. - Guarde o ficheiro php.ini e reinicie o serviço Apache.
Note que, se usar a verificação em 2 passos no Gmail, precisa de adicionar uma nova senha em Definições - Contas - Alterar definições de contas - Outras definições da Conta Google - Segurança - Verificação em 2 passos - Gerir as suas senhas específicas de aplicação.
Quando a nova Senha Específica de Aplicação (ASP) for apresentada em grupos de quatro caracteres separados por espaços, certifique-se de que NÃO introduz os espaços na senha SMTP nas configurações do servidor de email no Joomla.
- Senhas específicas de aplicação (ASPs): Consulte a página de suporte da Google intitulada Sign in with App Passwords.
- Verificação em 2 passos: Consulte a página de suporte da Google intitulada Turn on 2-Step Verification.
Depuração
Se o email não for enviado ou nunca chegar:
-
Selecione Plugins no Painel principal → painel Sítio.
-
Encontre e autorize o plugin Sistema - Depuração e configure-o:
-
Defina Grupos permitidos para Superutilizadores para restringir a saída de depuração à sua própria sessão de autenticação, tanto na área administrativa como na área de visitantes. Se não quiser autenticar-se na área de visitantes como superutilizador, crie um grupo de utilizadores exclusivo para as suas atividades de teste e selecione esse grupo de utilizadores na lista de grupos de utilizadores permitidos.
-
Guardar e fechar
-
Selecione Configuração global no Painel principal → painel Sítio.
-
No separador Sistema, defina Depurar sistema para Sim.
-
No separador Servidor, defina Relatório de erros para Máximo.
-
No separador Registo, anote o conteúdo de Caminho para a pasta de registo, normalmente [algo]/administrator/logs.
-
Defina Registar quase tudo para Sim.
-
No painel Registo personalizado, defina o campo Categorias de registo para mail (sem aspas).
-
Guardar para guardar as configurações de depuração.
-
No separador Servidor, selecione o botão Enviar email de teste no final da página.
Se houver problemas no código durante o teste, deverá obter um Stack Trace que o ajudará a si ou a outros a diagnosticar o problema. Além disso, procure um ficheiro na pasta de registos com um nome como administrator/logs/everything.php e abra-o com um editor de texto. Pode ajudar a ver o que foi registado quando a mensagem foi enviada.