2012-08-13 2 views
0

Mac OS X에서 MAMP 2.1.1 (MAMP Pro 제외)을 사용합니다. html 이메일을 보내려면 PHP 코드를 작성하고 싶습니다.MAMP의 배 메일 사용

mail, mail_mime 및 net_smtp를 설치했습니다. http://pear.php.net/manual/en/package.mail.mail.send.php에서 찾은 예제를 시도하면 "500 Internal Server Error"가 표시됩니다. php_error.log를 확인한 결과, "PHP Fatal error : 클래스 'Mail'을 찾을 수 없습니다."라고 표시됩니다. 그리고 나는 내가 모든 파일과 경로를 확인

(false)를 부울 (false)를 부울을 반환, 모든 것이 잘 보인다

<?php 
require_once('Mail.php'); 
var_dump(class_exists('Mail', false)); 
?> 

을 시도했다. 우분투 서버에서 동일한 코드를 시도했지만 모든 것이 정상입니다.

누구든지이 문제를 어떻게 해결할 수 있습니까?

+0

은 당신의 길에서 배 PHP 디렉토리입니까? get_include_path()를 사용하여 현재 경로를 확인하십시오 – wgcrouch

+0

답장을 보내 주셔서 감사합니다, WayneC! 출력은 ". :/Applications/MAMP/bin/php/php5.4.4/lib/php"이고 모든 확장 파일 (Mail.php, Pear.php 등 포함)이이 경로 아래에 있는지 확인했습니다. 이메일은 여전히 ​​발송할 수 없습니다. – user1166140

+0

같은 문제가있는 해결책을 찾았습니까? – Ptitaw

답변

0

나는 Mountain Lion을 올해에 청소했고, 현재 MAMP 대신에 내장 된 아파치, PHP 및 MySQL을 사용하고 있습니다. 그러나이 문제는 현재 환경에서 여전히 발견되었습니다.

하지만 코드가 제대로 작동하지 않을 수 있습니다. 나는 require_once를/필요 호출하기 전에이 줄을 넣어 :

ini_set('include_path', ini_get('include_path') . ':/usr/lib/php/pear');

다음 메일 기능이 작동 할 수 있습니다.

이 줄이 없으면 내 컴퓨터의 포함 경로는 .:/usr/local/php5/lib/php입니다. 문제가 잘못된 경로로 인해 발생했음을 알 수 있습니다. 어떤 이유로 PEAR이 다른 경로에 설치되었고 php.ini가 올바르게 설정되지 않았습니다.

이 솔루션을 컴퓨터에서 사용해 볼 수 있습니다. 먼저 배를 설치하는 경로를 찾은 다음 해당 줄을 적절히 변경하고 코드에 넣으십시오.

이 솔루션을 사용하면 약간의 힌트를 얻을 수 있기를 바랍니다. 더 나은 솔루션을 공유 할 수 있다면 고맙겠습니다.