Pregunta

Soy nuevo en Mantis Bug Tracker y quiero habilitar la notificación de correo electrónico después de registrarme para una nueva cuenta.

Bueno, instalé la mantis correctamente sin ningún problema en mi computadora local, ya cambié la contraseña del administrador y eliminé la carpeta de administrador en el directorio. Después de esto, me registré para una nueva cuenta, se mostró un mensaje de confirmación diciendo que necesito verificar mi registro por correo electrónico. Mi problema aquí es que no se envió ningún mensaje de verificación a mi correo electrónico. Según uno de los tutoriales que encontré, necesito configurar primero mi config_inc.php. Después de la instalación, el contenido inicial de mi config_inc.php fue

<?php
$g_hostname      = 'localhost';
$g_db_username   = '<myUser>';
$g_db_password   = '<myPass>';
$g_database_name = 'bugtracker';
$g_db_type       = 'mysql';
?>

Entonces lo cambié a. *Estoy usando mi cuenta de Gmail aquí

<?php
$g_hostname      = 'localhost';
$g_db_username   = '<myUser>';
$g_db_password   = '<myPass>';
$g_database_name = 'bugtracker';
$g_db_type       = 'mysql';

$g_allow_signup             = ON;
$g_allow_anonymous_login    = OFF;
$g_anonymous_account        = '';

$g_phpMailer_method     = PHPMAILER_METHOD_SMTP; 
$g_smtp_host            = 'smtp.gmail.com';
$g_smtp_username        = '<myUser@gmail.com>';
$g_smtp_password        = '<myPass>';
$g_administrator_email  = '<myUser@gmail.com>';
$g_webmaster_email      = '<myUser@gmail.com>';
$g_from_name            = 'Mantis Bug Tracker';
$g_from_email           = '<myUser@gmail.com>';
$g_return_path_email    = '<myUser@gmail.com>';
$g_email_receive_own    = OFF;
$g_email_send_using_cronjob = OFF;

$g_allow_file_upload    = ON;
$g_file_upload_method   = DATABASE;
$g_absolute_path_default_upload_folder = '';
$g_max_file_size        = 5000000;
$g_preview_attachments_inline_max_size = 256 * 1024;
$g_allowed_files        = '';
$g_disallowed_files     = '';

$g_window_title         = 'MantisBT';
$g_logo_image           = 'images/mantis_logo.gif';
$g_favicon_image        = 'images/favicon.ico';

$g_show_realname = OFF;
$g_show_user_realname_threshold = NOBODY;

$g_default_home_page = 'my_view_page.php';
?>

Sobrescribo mi config_inc.php con este y luego regístrese para una nueva cuenta. Después de enviar la información, ocurrió un error que dice:

Error fatal: llame al método indefinido smtp :: getError () en <myDirectory> mantis biblioteca phpmailer class.phpmailer.php en línea 1910.

Y ahora estoy atascado, por favor ayúdame con esto, necesito configurar mi notificación por correo electrónico. Solo estaba creando cuentas pero no puedo usarlas porque necesito verificarlo.

Avíseme si necesito modificar algunos de los archivos relacionados y cuáles son los pasos.

¡Gracias por la ayuda!

¿Fue útil?

Solución

De acuerdo a un Publicar en los foros de la mantis, estas son configuraciones de trabajo para Gmail:

$g_phpMailer_method = PHPMAILER_METHOD_SMTP;
$g_smtp_host = 'smtp.gmail.com';
$g_smtp_username = 'username@gmail.com';
$g_smtp_password = 'yourpassword';
$g_smtp_connection_mode = 'ssl';
$g_smtp_port = 465;

Otros consejos

Si alguien todavía enfrenta problemas o error, mientras que la configuración agregue el nivel de registro para que pueda profundizar el problema. A continuación, la configuración funcionó para mí. Se escribe una explicación detallada aquí

$g_phpMailer_method = PHPMAILER_METHOD_SMTP;
$g_smtp_host = 'smtp.gmail.com';
$g_smtp_port = '465';
$g_smtp_connection_mode = 'ssl';
$g_smtp_username = 'letzdotesting@gmail.com';
$g_smtp_password = 'xxxxx';
$g_administrator_email = 'letzdotesting@gmail.com';
$g_webmaster_email = 'letzdotesting@gmail.com';
$g_from_email = 'letzdotesting@gmail.com';
$g_return_path_email = 'letzdotesting@gmail.com';
$g_default_timezone = 'UTC';
$g_log_level = LOG_EMAIL | LOG_EMAIL_RECIPIENT;
$g_log_destination = 'file:C:\mantisbt.log';
$g_phpMailer_method = PHPMAILER_METHOD_SMTP;
$g_smtp_host = 'smtp.gmail.com';
$g_smtp_username        = 'username';   // without @gmail.com
$g_smtp_password        = 'password';
$g_smtp_connection_mode = 'ssl';
$g_smtp_port = 465;

esto funciona para mi

Algo para agregar sobre Gmail. Estas configuraciones son correctas, pero Gmail ha instituido una nueva seguridad que aún evitará que el correo electrónico se envíe desde Mantis o cualquier otro correo utilizando el conector SMTP.

Para hacer esto con Gmail, debe "Permita que las aplicaciones menos seguras accedan a las cuentas". En Gmail Admin, hay una configuración para permitir a los usuarios controlar el acceso desde "aplicaciones menos seguras", que deben activarse, y luego la cuenta de usuario utilizada para enviar el correo debe activar el acceso desde "aplicaciones menos seguras". El enlace anterior proporciona la información sobre cómo configurar esto.

Lo frustrante es que todo parecerá funcionar bien, pero no se envían correos electrónicos. No hay indicación de error del servidor SMTP. Sin embargo, la cuenta de usuario utilizada para enviar correo puede recibir un correo electrónico de Gmail que indica que alguien está intentando acceder a la cuenta. Pasé horas tratando de rastrear esto.

Actualización de 2017 (mantisbt 2.3.0) Siga los pasos a continuación:

[1] Si estás usando Docker

Acceda a la instancia de Docker ejecutando el comando a continuación:

docker exec -it {docker-id} bash

2] Inside mantisbt Server

Si no tienes ningún editor:

# sudo apt-get update
# apt-get install vim

Crear un archivo de registro:

# touch /var/log/mantisbt.log
# cd /var/log/
# chmod 777 mantisbt.log

3] Edición de la configuración de mantis

# vim /var/www/html/config/config_inc.php

Agregue el siguiente contenido al archivo abierto en el paso anterior:

$g_phpMailer_method = PHPMAILER_METHOD_SMTP;
$g_administrator_email = 'your-admin-email@gmail.com';
$g_webmaster_email = 'your-webmaster-email@gmail.com';
$g_return_path_email = 'your-return-email@gmail.com';
$g_from_email = 'your-from-email@gmail.com';

$g_smtp_host = 'smtp.gmail.com';
$g_smtp_port = 465;
$g_smtp_connection_mode = 'ssl';
$g_smtp_username = 'username';
$g_smtp_password = 'password';

$g_log_level = LOG_EMAIL | LOG_EMAIL_RECIPIENT;
$g_log_destination = 'file:/var/log/mantisbt.log';

$g_validate_email = OFF;

4] Edición de la configuración de Gmail

Debe hacer esto para permitir la autenticación mantis:

  1. Acceda a la siguiente URL:

    https://myaccount.google.com

  2. Navegue hasta el inicio de sesión y la seguridad del menú en árbol del menú.

  3. Comprobar el "Permitir aplicaciones menos seguras"Opción y establecer igual a True

Imagen:enter image description here]

¡Eres bueno para ir! Probado y ejecutado con estas configuraciones. =

Mi problema se resolvió actualizando los certificados de CA. Estoy usando XAMPP, con PHP 7.2 en Windows Sever 2012.

Aunque el siguiente enlace le proporciona los detalles, también menciono la parte relavente:

Actualización de certificados de CA

Actualización de certificados de CA Para actualizar sus certificados de CA, asegúrese de que su sistema operativo esté completamente actualizado: los certificados de CA generalmente se actualizan a través de actualizaciones del sistema operativo. Alternativamente, puedes descargar El último archivo de CA CERT de Curl, instálelo en algún lugar accesible (por ejemplo /etc/ssl/cacert.pem) y apunte a él desde las directivas Openssl.Cafile y Curl.cainfo en su archivo php.ini (esta ubicación variará según a su configuración de OS y PHP; donde debe ponerlo está más allá del alcance de PhPMailer!):

openssl.cafile = /etc/ssl/cacert.pem 
curl.cainfo = /etc/ssl/cacert.pem

https://github.com/phpmailer/phpmailer/wiki/troublashooting#updating-ca-certificates

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top