2016-09-13 3 views
0

У меня есть серверы cPanel, которые запускают один и тот же сценарий, но я жестко закодировал имя сервера в коде, поскольку я не могу найти нигде, чтобы захватить фактический домен сервера.Как найти доменное имя сервера для SMTP с PHP?

Представьте себе 3 сервера Cpanel и эти серверные домены:

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

Во время работы с PHP скрипта для отправки почты через SMTP, мне нужно, чтобы подключиться к серверу и хочет использовать имя сервера, который будет для безопасного подключения.

Я не хочу создавать массив IP-адресов, а затем сравнивать, поскольку это не будет работать с выделенными IP-адресами.

Я попытался ini_get ('SMTP'), который просто возвращает бесполезный «localhost».

Я пробовал ini_get_all (null, false), и никакой радости.

Я проверил глобальность $ _SERVER, но появился только доступ к домену.

Единственное, что вернуло имя сервера, было phpinfo().

+0

, что вы имеете в виду, доменное имя? домен сайта, на котором вы будете размещать на этом сервере, или собственное имя хоста сервера? –

ответ

0

Понадобилось время, чтобы найти это, и, составив вопрос, я нашел ответ. Вместо того, чтобы тратить то, что я думаю, что это хороший вопрос (так как я не мог найти ответ легко), здесь:

Новое в РНР 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

и на этой странице, вы должны найти информацию.