2016-09-13 3 views
0

동일한 스크립트를 실행하는 cPanel 서버가 있지만 실제 서버 도메인을 잡기 위해 어디에도 찾을 수 없으므로 서버 이름을 코드에 하드 코딩했습니다.PHP에서 SMTP에 대한 서버 도메인 이름을 찾는 방법은 무엇입니까?

3 개의 cPanel 서버를 상상하고이 서버의 도메인입니다 :

apple.hosting.com 
banana.hosting.com 
carrot.hosting.com 

SMTP를 통해 메일을 보낼 수있는 PHP 스크립트를 실행하는 동안, 나는 서버에 연결해야 할 것입니다 서버 이름을 사용하려면 안전한 연결을 위해 제공됩니다.

전용 IP 주소로 작동하지 않으므로 IP 주소의 배열을 만들고 비교할 필요가 없습니다.

나는 쓸모없는 'localhost'를 반환하는 ini_get ('SMTP')을 시도했다.

ini_get_all (null, false) 및 아무런 기쁨을 시도했습니다.

$ _SERVER 전역을 검사했지만 액세스중인 도메인 만 나타났습니다.

서버 이름을 반환 한 것은 phpinfo()뿐이었습니다.

+0

, 도메인 이름을 확인하고 싶을 것이다? 해당 서버에서 호스팅 할 사이트의 도메인 또는 서버의 자체 네트워크 호스트 이름? –

답변

0

질문을 작성하는 데 시간이 걸렸으며 답변을 찾았습니다. 보다는 내가 (내가 쉽게 답을 찾을 수 없기 때문에) 좋은 질문은 무슨 생각을 낭비, 여기있다 :

PHP 5.3로

새로운 : 좋은 달콤한 그것 뿐이다

gethostname(); 

. 자세한 내용은 여기

읽기 : PHP function gethostname

+0

@Exit이 호스팅되는 도메인 이름을 묻지 않는다고 생각합니다. 실제로 그는 SMTP 서버의 메일 서버 또는 도메인 이름을 찾으려고합니다. – FluxCoder

0

당신은 이메일 헤더에 보면 자신에게 이메일을 보낼 수 :

정상에게 (Outlook에서 메일을 열고는,보기 -> 옵션, '인터넷 헤더가있다) 하위 도메인은 mail.domain.com, 그리고 다른 해결책이 될 수있다 : cpanel --> go to your mailing accounts -- > click on configure mail account -- > there somewhere in the page you will get the information about your smtp server

을 그리고 그 페이지에서 정보를 찾을해야합니다

이를 따르십시오.

관련 문제