У меня есть nginx, установленный с PHP-FPM в окне CentOS 5, но я стараюсь заставить его обслуживать любые мои файлы - будь то PHP или нет.
Nginx работает как www-data: www-data, а по умолчанию "Добро пожаловать на сайт nginx на EPEL" (принадлежит root: root с разрешениями 644) загружается отлично.
В файле конфигурации nginx есть директива include для /etc/nginx/sites-enabled/*. conf,, и у меня есть файл конфигурации example.com.conf, таким образом:
server {
listen 80;
Virtual Host Name
server_name www.example.com example.com;
location / {
root /home/demo/sites/example.com/public_html;
index index.php index.htm index.html;
}
location ~ \.php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param PATH_INFO $fastcgi_script_name;
fastcgi_param SCRIPT_FILENAME /home/demo/sites/example.com/public_html$fastcgi_script_name;
include fastcgi_params;
}
}
Несмотря на то, что public_html принадлежит www-data: www-data с правами доступа 2777, этот сайт не может обслуживать какой-либо контент -
[error] 4167#0: *4 open() "/home/demo/sites/example.com/public_html/index.html" failed (13: Permission denied), client: XX.XXX.XXX.XX, server: www.example.com, request: "GET /index.html HTTP/1.1", host: "www.example.com"
Я нашел множество других сообщений с пользователями, получающими 403s от nginx, но большинство из того, что я видел, связано с более сложными настройками с Ruby/Passenger (которые в прошлом я действительно преуспел) или только получаю ошибки, когда используется восходящий PHP-FPM, поэтому они, похоже, мало помогают.
Я сделал что-то глупое здесь?