메일 서버 설정 또는 그것에 연결 오류입니다. 그러나 EmailComponent에 대한 CakeEmail 클래스를 혼란스럽게합니다.
은 첫째로 당신은 당신이 새로운 CakeMail 클래스 (2.X에서 새로운)를 사용하는의 emailComponent으로 이메일을 보내려고 아닙니다. 따라서 이 :
var $components = array('Email');
이 :
$email = new CakeEmail();
는 다른 두 가지입니다. 첫 번째는 EmailComponent를로드하지만, 전혀 사용하지 않습니다. 2.x의 EmailComponent는 더 이상 사용되지 않습니다. 귀하의 예에서는 CakeEmail 클래스를 사용하고 있습니다.
첫째로 당신은 클래스가 실제로로드되는 것을 보장해야한다 : 나는 당신이 현재 기본 구성 옵션을 사용하는 가정
App/Config/email.php
: 당신이 구성 파일이있는 경우
App::uses('CakeEmail', 'Network/Email');
그런 다음 확인 . 즉, 기본 전송은 'Mail'- PHP 메일 기능입니다. 기본 메일 전송 에이전트에 연결할 수 없으며 시스템 소켓을 통해이 작업을 수행하려고하기 때문에 SocketException 인이 발생합니다 (Windows에서는 존재하지 않는 것으로 생각되지만 잘못 될 수 있습니다. 나는 기본 이메일 구성이 괜찮 사용하여, 어쨌든 프로세스 간 cominucation의 윈도우 API에서 그런 일)
있다는 것을 확실히 알고있다. CakeEmail 클래스의 CakePHP 북 섹션을 읽어보십시오.
을 확인? – Annabel
lib를 대신 사용하여 구성 요소를 포함시키는 이유는 무엇입니까? 또한 - 창문을 사용하고 smtp를 사용하지 않는 것은 당신이 무엇을 해야할지 모르는 경우 설정하기가 매우 어렵습니다. 왜 쉬운 방법을 사용하지 않는가 (smtp는 단지 4 개의 설정 문자열 임). – mark
내 대답은 여기를 봐 http://stackoverflow.com/questions/17669012/cakephp-2-cakeemail-could-not-send-email-error/19875079#19875079 – Fury