2011-12-15 2 views
0

내 컴퓨터에서 서버를 실행하고 있지만 mail() PHP 함수를 통해 전자 메일을 보낼 수 없습니다. Mercury 서버도 백그라운드에서 실행됩니다.xampp localhost에서 메일을 보낼 수 없습니다.

이 내 php.ini 파일

[mail function] 
; For Win32 only. 
; http://php.net/smtp 
SMTP = localhost 
; http://php.net/smtp-port 
smtp_port = 25 

; For Win32 only. 
; http://php.net/sendmail-from 
sendmail_from = [email protected] 

; For Unix only. You may supply arguments as well (default: "sendmail -t -i"). 
; http://php.net/sendmail-path 
sendmail_path = "\"C:\xampp\sendmail\sendmail.exe\" -t" 

의 구성입니다 그리고 이것은 sendmail.ini

; configuration for fake sendmail 

; if this file doesn't exist, sendmail.exe will look for the settings in 
; the registry, under HKLM\Software\Sendmail 

[sendmail] 

; you must change mail.mydomain.com to your smtp server, 
; or to IIS's "pickup" directory. (generally C:\Inetpub\mailroot\Pickup) 
; emails delivered via IIS's pickup directory cause sendmail to 
; run quicker, but you won't get error messages back to the calling 
; application. 

smtp_server=localhost 

; smtp port (normally 25) 

smtp_port=25 

; the default domain for this server will be read from the registry 
; this will be appended to email addresses when one isn't provided 
; if you want to override the value in the registry, uncomment and modify 

;default_domain=local 

; log smtp errors to error.log (defaults to same directory as sendmail.exe) 
; uncomment to enable logging 

;error_logfile=error.log 

; create debug log as debug.log (defaults to same directory as sendmail.exe) 
; uncomment to enable debugging 

;debug_logfile=debug.log 

; if your smtp server requires authentication, modify the following two lines 

auth_username=webname 
auth_password=webnamemail 

; if your smtp server uses pop3 before smtp authentication, modify the 
; following three lines 

;pop3_server= 
;pop3_username= 
;pop3_password= 

; to force the sender to always be the following email address, uncomment and 
; populate with a valid email address. this will only affect the "MAIL FROM" 
; command, it won't modify the "From: " header of the message content 

;[email protected] 

; sendmail will use your hostname and your default_domain in the ehlo/helo 
; smtp greeting. you can manually set the ehlo/helo name if required 

;hostname=localhost 

    ; Force the addition of the specified parameters to be passed as extra parameters 
    ; to the sendmail binary. These parameters will always replace the value of 
    ; the 5th parameter to mail(), even in safe mode. 
    ;mail.force_extra_parameters = 

    ; Add X-PHP-Originating-Script: that will include uid of the script followed by the filename 
    mail.add_x_header = Off 

    ; Log all mail() calls including the full path of the script, line #, to address and headers 
    ;mail.log = "C:\xampp\php\logs\php_mail.log" 

난 실종 뭔가?

편집 : mail() 함수는 아무 것도 반환하지 않습니다.

+3

'메일()을 통해 이메일을 보낼 수 없습니다. '- 시도 할 때 어떻게됩니까? 유용 할 수있는 오류가 있습니까? – DaveRandom

+0

동일한 컴퓨터에 SMTP 서버가 있습니까? 그렇지 않으면 sendmail.ini의 첫 번째 매개 변수가 아직 설정되지 않습니다. – Alfabravo

+0

메일 기능에서 아무것도 반환하지 않습니다. 물론, 수은이 백그라운드에서 실행 중입니다. – siannone

답변

0

"포스트 캐스트 서버"를 사용해보세요. 나에게 효과적입니다.

Xampp이 지원하지 않으므로 추가 SMTP 서버 응용 프로그램이 필요합니다. "Post Cast Server"버전을 다운로드하십시오. 2. 도구 -> 설정 -> 시스템 -> SMTP 서버로 이동하여 호스트 이름을 localhost 서버 포트로 25로 설정하십시오. 최소화 된 응용 프로그램을 실행하십시오. 내가 똑같은 문제에 직면했을 때 분명히 효과가 있었기 때문에 분명히 효과가있을 것입니다. 그런 다음 메일을 선택하고 메일을 보낼 시작 버튼을 누릅니다.

관련 문제