Алексей Уколов: просто я задался этим вопросом потому что наткнулся на описание различных высоконагруженных проектов(ВК, мэйл и др) и во всех говорилось именно о такрй архитектуре - nginx-фронт, apache-бэкенд, вот я и пытаюсь понять зачем им апач на бэкенде
А можете привести пару примеров в каких случаях одного интерпретатора недостаточно и нужен апач? Например регистрацию и авторизацию пользователей можно реализовать имея лишь интерпретатор пхп (без апача)?
Спасибо за ответ, причину ошибки уже подсказали: файл Index.php у меня находился на ПЕРВОМ хосте и я думал, что второй хост сможет и должен его исполнить даже несмотря на то, что он на другом хосте.
Андрей Павленко: Перепробовал все, уже два дня мучаюсь. В Error.log апача никаких ошибок не пишется, а error.log nginx'a пишется тот самый 504 Gateway Time-out. Пинги проверил - с обоих хостов друг на друга в среднем 0.5 мс.
Приведу код, может если не Вы, то кто-нибудь другой подскажет:
Код nginx:
server {
listen 443;
ssl on;
ssl_certificate /etc/ssl/xxxx.com.crt;
ssl_certificate_key /etc/ssl/xxxx.com.key;
root /var/www/xxxx.com/html;
index index.html index.htm index.nginx-debian.html;
server_name xxxx.com www.xxxx.com;
location / {
try_files $uri $uri/ =404;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass xxx.xxx.xxx.xx:9000; #ip второго хоста на котором установлен php
#include fastcgi_params;
#fastcgi_index index.php;
#fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
#fastcgi_param QUERY_STRING $query_string;
}
}
Спасибо за ответ. Дело в том, что я уже пробовал делать так, как Вы сказали. в fastcgi_pass прописывал ip второго хоста на который установлен php. В файле /etc/php/7.0/fpm/pool.d/www.conf на втором хосте заменил строку listen на строку listen = XXX.XXX.XXX.XX:9000 - где иксы это ip-этого же хоста(самого себя). Однако запрашивая php файл на сайте получаю ошибку 504 Gateway Time-out. Не можете знать в чем дело?