Я переношу сайт PHP с сервера Apache на сервер NGINX. Сначала я избавлюсь от apache
чтобы избежать проблем:
# service httpd stop
# yum erase httpd*
Сейчас собираюсь установить php-fpm
поэтому я могу расширить функции php через NGINX:
# yum install php-fpm
Давайте убедимся, что php-fpm работает под нужным пользователем:
# ps aux | grep apache
apache 1658 0.0 0.5 222552 5316 ? S 20:41 0:00 php-fpm: pool www
apache 1659 0.0 1.0 227268 10536 ? S 20:41 0:00 php-fpm: pool www
apache 1660 0.0 1.0 227268 10420 ? S 20:41 0:00 php-fpm: pool www
apache 1661 0.0 1.0 227268 10420 ? S 20:41 0:00 php-fpm: pool www
apache 1662 0.0 0.5 222552 5316 ? S 20:41 0:00 php-fpm: pool www
Нет ... ну и что, если:
# vi /etc/php-fpm.d/www.conf
# service php-fpm restart
# ps aux | grep nginx
nginx 2379 0.0 0.3 222264 3504 ? S 21:47 0:00 php-fpm: pool www
nginx 2380 0.0 0.3 222264 3504 ? S 21:47 0:00 php-fpm: pool www
nginx 2381 0.0 0.3 222264 3504 ? S 21:47 0:00 php-fpm: pool www
nginx 2382 0.0 0.3 222264 3504 ? S 21:47 0:00 php-fpm: pool www
nginx 2383 0.0 0.3 222264 3508 ? S 21:47 0:00 php-fpm: pool www
Потрясающе ... Посмотрим, что происходит, когда я вызываю mail()
звонок из моего приложения:
postfix/pickup[2305]: 6B9B6223BD: uid=497 from=<nginx>
postfix/cleanup[2393]: 6B9B6223BD: message-id=<20130318014941.6B9B6223BD@penny.localdomain>
postfix/qmgr[2306]: 6B9B6223BD: from=<nginx@penny.localdomain>, size=367, nrcpt=1 (queue active)
postfix/smtp[2396]: connect to gmail-smtp-in.l.google.com[173.194.75.26]:25: Connection timed out
postfix/smtp[2396]: connect to alt1.gmail-smtp-in.l.google.com[173.194.65.26]:25: Connection timed out
postfix/smtp[2396]: connect to alt2.gmail-smtp-in.l.google.com[173.194.70.27]:25: Connection timed out
postfix/smtp[2396]: connect to alt3.gmail-smtp-in.l.google.com[173.194.69.27]:25: Connection timed out
postfix/smtp[2396]: connect to alt4.gmail-smtp-in.l.google.com[173.194.71.26]:25: Connection timed out
postfix/smtp[2396]: 6B9B6223BD: to=<myemail@gmail.com>, relay=none, delay=151, delays=0.03/0.01/150/0, dsn=4.4.1, status=deferred (connect to alt4.gmail-smtp-in.l.google.com[173.194.71.26]:25: Connection timed out)
Так может ли мой ящик действительно понять, как связаться с Gmail?
# host -t mx gmail.com
gmail.com mail is handled by 20 alt2.gmail-smtp-in.l.google.com.
gmail.com mail is handled by 30 alt3.gmail-smtp-in.l.google.com.
gmail.com mail is handled by 40 alt4.gmail-smtp-in.l.google.com.
gmail.com mail is handled by 5 gmail-smtp-in.l.google.com.
gmail.com mail is handled by 10 alt1.gmail-smtp-in.l.google.com.
Конечно, может ... хм ...
Замечу, что это гостевая виртуальная машина Centos 6.3, работающая локально.
Проблема в том, что я не могу доставлять почту, используя текущую конфигурацию.
Я не уверен, что делать дальше на этом этапе, любые рекомендации будут оценены.
Похоже, что мой интернет-провайдер блокировал исходящий трафик на порту 25. Я смог подтвердить это, сравнив соединение с:
telnet gmail-smtp-in.l.google.com 25
на моем локальном ящике и удаленном ящике за пределами провайдера. Удаленный ящик смог установить соединение.
По крайней мере думаю вот что происходит.