Página 4 de 5

NotaPublicado: 2008-01-07 19:40 @861
por teamvipconnectz
No he entiendo demasiado sobre el asunto explorer pero te agradeceré infinitamente si me ayudas a resolver este problema.

Yo también continúo buscando una solución. SALUDOS y MUCHÍSIMAS GRACIAS.

NotaPublicado: 2008-01-07 19:48 @866
por explorer
He encontrado un hilo al respecto:
http://www.perlmonks.org/index.pl?node_id=570121

Comentan que hay que asegurarse que el módulo Authen::SASL sea la versión 2.10.

NotaPublicado: 2008-01-07 20:08 @880
por teamvipconnectz
Verifiqué en la carpeta en donde tengo los módulos que no estaban instalados en mi hosting y veo que tengo la versión 2.10. De hecho descargué el archivo desde la página de CPAN, pero me estoy acordando que pedí al soporte técnico de mi hosting que instalaran también ese modulo y así lo hicieron y estoy viendo que tiene instalada la versión 0.99, bueno eso creo porque en la lista en donde se muestran los módulos que están instalados en mi hosting aparece así Authen::SASL (0.99)

Pero la duda es: ¿al usar un módulo, Perl lo busca primero en el servidor y si no lo encuentra después lo busca en la carpeta que yo puse?

¿Si lo encuentra primero en mi servidor ya NO lo buscará en la carpeta que yo los guarde?

NotaPublicado: 2008-01-07 20:24 @892
por explorer
Estoy conectado al canal irc://irc.freenode.net/perlenespanol por si quieres hablar conmigo.

Una forma de ver la versión de los módulos (aunque no es estándar) es ver el contenido de la variable VERSION:
Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
perl -MAuthen::SASL -e 'print $Authen::SASL::VERSION'
Coloreado en 0.002 segundos, usando GeSHi 1.0.8.4
(desde la línea de comandos. Habría que adaptarlo para ejecutarlo desde un CGI. Por ejemplo, sería fácil ponerlo en mi CGI mínimo).

El orden de búsqueda de los módulos lo determina el contenido de la variable especial @INC. Y en mi Perl (5.8.8), si usas 'use lib ...' colocará ese directorio en primer lugar de búsqueda:
Código: Seleccionar todo
portatil:~/.cpan/build # perl -e 'use lib "lib"; print join "\n",@INC'
lib
/usr/lib/perl5/5.8.8/i586-linux-thread-multi
/usr/lib/perl5/5.8.8
/usr/lib/perl5/site_perl/5.8.8/i586-linux-thread-multi
/usr/lib/perl5/site_perl/5.8.8
/usr/lib/perl5/site_perl
/usr/lib/perl5/vendor_perl/5.8.8/i586-linux-thread-multi
/usr/lib/perl5/vendor_perl/5.8.8
/usr/lib/perl5/vendor_perl


Esto es muy raro...

Modifica el código para que ponga el número de versión que quieres usar:
Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
use Authen::SASL 2.10;
Coloreado en 0.001 segundos, usando GeSHi 1.0.8.4

Así, en caso de intentar cargar un módulo anterior, dará otro fallo.

NotaPublicado: 2008-01-07 20:30 @895
por explorer
Coloca la línea 'use Authen::SASL 2.10;' por ENCIMA de la del MIME::Lite;

NotaPublicado: 2008-01-08 14:41 @653
por teamvipconnectz
Hola de nuevo explorer hice las modificaciones que me indicaste al pie de la letra, y exactamente sale el mismo error.

Solicité a soporte técnico de mi hosting que desinstalaran el módulo Authen::SASL para yo utilizarlo directamente desde la carpeta en donde lo guardé, y así lo hicieron, y no hubo ningún cambio, el mismo error.

Código: Seleccionar todo
Unknown callback: 'authname'. (user|auth|language|pass)


Ya sueño con este error, ya se volvió un reto encontrarle la solución a esto a como de lugar.

NotaPublicado: 2008-01-08 14:45 @656
por explorer
¿Qué versión de Perl tienen instalada?

NotaPublicado: 2008-01-08 14:49 @659
por teamvipconnectz
Es la versión Perl 5.8.8.

NotaPublicado: 2008-01-08 15:13 @676
por explorer
Pues sí que estoy perdido... a mi me funciona bien y eso que he probado a enviar un centenar de cartas...

Lo siento... no se me ocurre nada más... salvo que les preguntes si es realmente necesario usar autenticación en su servidor. Si no lo es, entonces quita la parte de usuario y contraseña.

Y si sí, pues les preguntas qué soluciones tienen en cuanto a 'listas de correo'. No creo que la instalación de otro módulo resuelva el problema.

NotaPublicado: 2008-01-09 15:31 @688
por teamvipconnectz
Hice una prueba de esta manera:

Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
#!/usr/bin/perl

use lib('lib');
use CGI::Carp qw(fatalsToBrowser);
use Authen::SASL;
use MIME::Lite;
use strict;

my $usuario  = '[email protected]';
my $password = 'mipass';
my $host     = '00.00.00.000';

my $msg = MIME::Lite->new(
    From    => '[email protected]',
    To      => '[email protected]',
        Cc       =>'[email protected]',
    Subject => 'CGI email',
    Data    => "FUNCIONA",
);

$msg->send('smtp', $host);
Coloreado en 0.001 segundos, usando GeSHi 1.0.8.4


Y cuando no agrego destinatario CC si me envía el correo, pero cuando agrego un destinatario CC me marca este error.

Código: Seleccionar todo
SMTP recipient() command failed:
sorry, that domain isn't in my list of allowed rcpthosts (#5.7.1)


En el email que pongo como CC sí que tengo en la lista de permitidos el correo [email protected]

¿Alguien sabe a qué se debe este error y si tiene solución?

explorer, que servidor de email estás utilizando para hacer el envió de todos los mails que mencionas? ¿Cuántos emails te permite enviar? ¿Cuánto cuesta?

¿Alguien me puede recomendar un servicio de email hosting, en el que pueda hacer uso del SMTP de manera ilimitada o algo parecido? Tengo pensado contratar otro para probar el script, porque si explorer dice que le ha funcionado perfectamente entonces lo que está fallando es mi servidor de email.