Я получил настройку сервера с nginx + php-fpm и mysql. У меня есть другой сервер, на котором установлен только php-fpm, поэтому я хотел использовать его для балансировки нагрузки. Но когда я использую этот выделенный сервер с php-fpm в качестве балансировщика нагрузки, у меня появляется ошибка при открытии страницы: «Доступ запрещен».
/etc/nginx/nginx.conf
user www-data;
worker_processes 3;
error_log /var/log/nginx/error.log;
pid /var/run/nginx.pid;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
server_names_hash_bucket_size 64;
access_log /var/log/nginx/access.log;
sendfile on;
#tcp_nopush on;
#keepalive_timeout 0;
keepalive_timeout 65;
tcp_nodelay on;
#gzip on;
upstream php {
server dedicatedserverip:9000;
}
include /etc/nginx/sites-enabled/*;
}
/etc/nginx/sites-enabled/site.org.conf
server {
listen 81;
server_name site.org www.site.org;
access_log /var/log/nginx/site.org.log;
error_log /var/log/nginx/site.org.log;
root /home/www/site.org;
index index.php;
location ~ .php$ {
fastcgi_pass php;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /home/www/$fastcgi_script_name;
}
}
Почему я получил эту ошибку? Когда я меняю только fastcgi_pass на 127.0.0.1:9000 - все работает нормально.
Найдите свою конфигурацию php-fpm (исходное место установки по умолчанию - /usr/local/etc/php-fpm.conf) и убедитесь, что listen.allowed_clients
настроен так, чтобы разрешить IP-адрес вашего Nginx.
Если это не поможет, проверьте журнал ошибок Nginx для получения дополнительных сведений.
Я перекомпилировал все php. Если нужен учебник http://docs.moodle.org/en/Development:Install_Moodle_On_Ubuntu_with_Nginx/PHP-fpm