개발! 딱 깔끔하고 센스있게!

PHP: mail () 함수, 운영 시 ini set () 를 가 지 며, SMTP 와 SMTTP 포트 로 리 눅 스에 서 작업 하지 않 습 니 다. 본문

개발 스크랩 메모/PHP

PHP: mail () 함수, 운영 시 ini set () 를 가 지 며, SMTP 와 SMTTP 포트 로 리 눅 스에 서 작업 하지 않 습 니 다.

렉사이 2020. 11. 29. 01:55

SMTP 호스트 를 사용 하여 PHP 코드 를 사용 하여 메 일 을 보 냈 습 니 다.

다음 과 같 습 니 다.

 

 ini_set('SMTP','myserver'); ini_set('smtp_port',25); $to = $email; $headers = "MIME-Version: 1.0" . "\r\n"; $headers .= "Content-type: text/html; charset=iso-8859-1" . "\r\n"; $headers .= "From: NO-REPLY<[email protected]>" . "\r\n"; $subject = "Confirmation For Request"; $message = ' Hi '.$firstname.' '.$lastname.' We recieved below details from you. Please use given Request/Ticket ID for future follow up:  Your Request/Ticket ID: '.$ticketID.'  Thanks,
 '.$team.' Team.   '; mail( $to, $subject, $message, $headers ); 

지금 내 가 윈도 우즈 Localhost 에서 코드 를 실 행 했 을 때...저 는 메 일 을 성공 적 으로 받 았 습 니 다.

그러나 리 눅 스 설정 에서 똑 같은 코드 를 사용 하면 메 일 을 받 지 않 습 니 다.

비록 Mail () 함수 가 리 눅 스에 서 트 루 로 되 돌아 갑 니 다.

..

windows localhost 와 Liux 서버 의 ppinfo 를 연구 할 때 저 는 메 일 파 트 에 대해 차이 점 을 발 견 했 습 니 다.

 

윈도 스에 서 나 는 sendmail path = "값 이 없다" 는 것 을 발 견 했 고, Liux 서버 에 서 는 "usr / sbin / sendmail - t - I" 를 표시 했다.

 

이 문 제 를 해결 해 줄 사람 이 있 습 니까?

메모: windows 에 서 는 WAMP 설정 이 며 리 눅 스 는 전용 서버 입 니 다.

 

대답 하 다.

 

하면, 만약, 만약...ph. ini 파일짧 은 묘사 가 있 습 니 다.

 

ini_set('SMTP','myserver'); ini_set('smtp_port',25); 

이 두 값 은 윈도 우즈 에 만 적용 된다.

따라서 링크 스에 SMTP 로 메 일 을 보 내 려 면 post fix 를 설치 하고 중간 계 기 를 만들어 야 합 니 다.

 

htps: / www. linode. com / doc. s / email / post fix / post. fix - som. p - debian 7

또는 더 쉬 운 것 은 LIb 를 사용 하여 socket 을 통 해 SMTP 메 일 을 보 내 거나, Swift mailer 처럼 컬 을 만 들 수 있 습 니 다.

 

http: / / swift mail. org / docs / sending. html

그럼 훨씬 쉬 워.

Comments