Добрый день. Есть почтовый ящик на своем сайте, хостинг timeweb. Вручную письма отправляются. Не могу отправить через скрипт на php, не проходит строка fputs($socket, "AUTH LOGIN\r\n"); Хотя для ящика на яндекс работает. Что делаю не так? PHP: try { if(!$socket = @fsockopen($this->smtp_host, $this->smtp_port, $errorNumber, $errorDescription, 30)){ throw new Exception($errorNumber.".".$errorDescription); } if (!$this->_parseServer($socket, "220")){ throw new Exception('Connection error'); } $server_name = $_SERVER["SERVER_NAME"]; fputs($socket, "HELO $server_name\r\n"); if (!$this->_parseServer($socket, "250")) { fclose($socket); throw new Exception('Error of command sending: HELO'); } fputs($socket, "AUTH LOGIN\r\n"); if (!$this->_parseServer($socket, "334")) { fclose($socket); throw new Exception('Autorization error1'); }
Попробуй отправить через PHPMailer или функцию mail(), если заработает, то смотри в чём разница, проверить параметры соединения, и структуру отправляемых данных. Почему сразу не используется mail()?
Если работает на яндексе а на вашем сервере не работает, то 146% дело в настройках.... не тот порт, сервер, логин, пароль или на другом сервере - что-то не включено, или не довинчено и надо это сделать