Foros del Web » Programando para Internet » PHP »

Sistema de envío masivo de correos

Estas en el tema de Sistema de envío masivo de correos en el foro de PHP en Foros del Web. En contra de lo que pudiera parecer, no pretendo realizar SPAM, sino un sistema de boletín o newsletter. Así pues, lo que necesito es enviar ...
  #1 (permalink)  
Antiguo 26/03/2005, 05:50
Avatar de qwerty_wq  
Fecha de Ingreso: enero-2005
Mensajes: 109
Antigüedad: 12 años, 10 meses
Puntos: 1
Sistema de envío masivo de correos

En contra de lo que pudiera parecer, no pretendo realizar SPAM, sino un sistema de boletín o newsletter. Así pues, lo que necesito es enviar a miles de usuarios una información períodica (presumiblemente cada dos semanas, aunque todavía lo tengo que decidir) preferiblemente en formato HTML por correo electrónico. He estado buscando varios scripts y he encontrado el PHP Mailer. Tengo dos preguntas:

A) ¿Es de fiar para lo que quiero hacer?
B) Tengo miedo de que el alojamiento que tengo contratado piense que pueda hacer SPAM (por razones obvias). Ya sé que tendría que consultarlo con ellos pero, ¿es factible el riesgo de que se considere así?
C) ¿Tendría que enviar los correos a los destinatarios uno por uno (con un bucle FOR, por ejemplo) o mejor mandarlos de una vez usando los destinatarios múltiples (BCC / CC)?
D) En las dos modalidades anteriores (BCC o destinatarios uno por uno), ¿cómo se recarga más el servidor? (Lo digo porque, precisamente, no es una cosa puntual, sino que tendré que hacerlo periódicamente y tengo varios miles de usuarios registrados a los que les puede interesar el servicio).

Muchas gracias.
  #2 (permalink)  
Antiguo 26/03/2005, 07:01
 
Fecha de Ingreso: septiembre-2003
Ubicación: Santo Domingo - R. Dominicana
Mensajes: 606
Antigüedad: 14 años, 2 meses
Puntos: 0
Amigo, en los FAQ hay mucho sobre este Tema. Uno de ellos es:

http://www.forosdelweb.com/showpost....8&postcount=24

Saludos
  #3 (permalink)  
Antiguo 28/03/2005, 08:36
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
a) PHP Mailer tan sólo es una "capa" de abstracción entre tu servidor SMTP, o sendmail o mail() de PHP que te permite entre otras cosas enviar un e-mail con algunas cosas más como archivos adjuntos, imagenes incrustradas .. Y si hablamos del uso de SMTP directo, permite hasta "balancear" la carga de envio de e-mail entre vários servidores SMTP (útil para gran cantidad de envio de e-mails).

Por sí sólo es "confiable" .. (si entendemos a que "funciona") .. Otra cosa será el rendimiento que esperas .. pero eso ya no dependerá de PHP Mailer sino del método que uses y a su vez de este último.

B) .. Si vas a usar los servidores SMTP de tu proveedor (o MTA en general de tu proveedor: sea mail() o sendmail() ... como PHP Mailer te permite usar uno de ellos). Tendras que consultar acerca de restricciones, como por ejemplo el máximo n° de e-mails a enviar por tiempo delimitado .. Algunos tienen limites. En otras ocasiones el límite está en el tiempo de ejecución que a PHP se le otorga para su ejecución (30 segundos por defecto) .. si no tienes modo de cambiar dicha configuración (con set_time_limit() podrías hacerlo siempre y cuando tu proveedor te deje hacerlo) .. no podrás enviar gran cantidad de e-mails, simplemente por qué el tiempo que PHP ha de invertir en ello superará dicho tiempo de ejecución máximo por defecto que ajuste PHP.

C) .. Justamente .. muchos filtros de anti-spam detectan como correo másivo (SPAM) a un e-mail con gran cantidad de usuarios en un CC o BCC (por ejemplo para filtrar esas "cadenas" de re-envia esto a un amigo para tal cosa ....). Por eso es mejor lanzar cada e-mail con tu bucle como si fuera uno sólo (cara a pasar mejor por filtros anti-spam).

D) .. Enviando uno por uno .. se le dá más carga al servidor (pero hay que ver "cual" .. por qué ahí tienes en el proceso a PHP y al MTA (Mail Transfer Agent) que uses). Y también depende del método que uses: mail() de PHP original .. espera respuesta ante cada envio del e-mail .. así que si compones una cabecera CC o BCC grande .. hasta que no se envien todos .. no se libera tu script PHP para hacer control u otras tareas. Si lo haces por SMTP directo, tienes la ventaja de mejor control de errores, mayor velocidad. En teoría por SMTP directo, podrías componer tu CC o BCC con todos tus e-mails ("concatenados") y enviarselo a tu servidor SMTP para que este trabaje (Con los problemas anteriormente descrito).

Lo mejor de todo esto es que lo pruebes tu mismo . . tal vez los "tiempos" que te hago mención en tu caso no te parezcan excesivos o tal vez si.

Por otro lado .. existen proveedores especializados en gestionar grandes listas de correo .. por ejemplo e-listas (www.elistas.net), mantienes con ellos tu lista de usuarios y tan sólo envias tu e-mail como administrador a dicho sistema para que ellos con su infraestructura te envien esos miles de e-mails .. es un servicio aparte que se ha de pagar .. por supuesto, pero es una alternativa que tendras que evaluar en su momento si tu proveedor te impone alguna de las restricciones mencionadas.

Un saludo,
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 04:07.