Enviando e-mails do PHPMailer usando endereços IP de proxies
Preciso enviar e-mails dePHPMailer usando endereços IP de proxies, sei que, para fazer isso, preciso usar a função fsockopen para conectar-me à conta SMTP; também sei que, se precisar conectar-me ao proxy, preciso usar a função fsockopen novamente. Mas usá-lo fsockopen dentro de outro fsockopen não é factível.
Eu tenho proxy transparente e não preciso de autenticação. Preciso enviar isso para um servidor SMTP distante de um provedor de serviços de email externo.
O código que eu tentei:
<?php
//SMTP params
$server = 'smtp.espdomain.com';
$server_port = '25';
$username = 'smtp_login';
$password = 'smtp_pass';
//Proxy
$proxy = '1.1.1.1';
$proxy_port = 1111;
//Open connection
$socket = fsockopen($proxy, $proxy_port);
//Send command to proxy
fputs($socket, "CONNECT $server:$server_port HTTP/1.0\r\nHost: $proxy\r\n\r\n");
fgets($socket, 334);
//SMTP authorization
fputs($socket, "AUTH LOGIN\r\n");
fgets($socket, 334);
fputs($socket, base64_encode($username)."\r\n");
fgets($socket, 334);
fputs($socket, base64_encode($password)."\r\n");
$output = fgets($socket, 235);
fputs($socket, "HELO $server \r\n");
$output = fgets($socket, 515);
?>
E não está funcionando, não sei por que?
Poderiasocat
comandos ajudam nessa situação ou existe alguma solução ou solução alternativa para isso?