Я пытаюсь настроить только что установленный сервер Ubuntu (12.04), но не могу запустить PHP-файлы через php-fpm. Независимо от того, что я делаю, я всегда получаю «Доступ запрещен». страница (обычный текст, не HTML или что-нибудь).
Установленные пакеты:
nginx
nginx-common
nginx-full
php5
php5-cli
php5-common
php5-fpm
Детали конфигурации:
PHP-FPM:
user = www-data
group = www-data
listen = /var/run/php5-fpm.sock
Nginx:
user www-data;
worker_processes 3;
events { worker_connections 1024; }
Стандартный / тестовый домен:
server {
listen 80;
server_name localhost;
root /extra/htdocs/default;
index index.html index.php
access_log /extra/logs/default/access.log;
error_log /extra/logs/default/error.log;
location / {
try_files $uri $uri/ /index.html;
}
location ~ \.php
{
fastcgi_split_path_info ^(.+\.php)(/.+)$;
include fastcgi_params;
fastcgi_index index.php;
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
}
/extra/htdocs/default/index.php:
<?php
phpinfo();
Все остальное по умолчанию. Журналы Nginx и php-fpm не показывают ошибок. Тем не менее, когда я загружаюсь, http://<server-ip>/index.php
я получаю страницу «Доступ запрещен».
Исправление проблем:
- Файл index.html работает просто отлично. Следовательно, это должно быть либо php-fpm, либо fastcgi-связывание между Nginx и php-fpm.
- Я установил для владельца (как пользователя, так и для группы) весь
/extra
каталогwww-data
, а для владельца - 777, чтобы быть уверенным (разумеется, я уменьшу его, как только он заработает). Так что это, конечно, не проблема с разрешениями - Я часто вижу не проблему security.limit_extensions : по умолчанию она установлена в .php, и это именно то, что я запрашиваю. Я явно установил его
.php .html
с тем же результатом.
Я действительно устаю от этого, я уже дважды установил эту настройку (хотя и на машины с OSX), и все работало безупречно. Есть что-нибудь, что я пропускаю?
Содержание журнала:
Журнал ошибок Nginx пуст.
Журнал доступа Nginx (удаленный ip):
<ip> - - [17/Jul/2012:11:21:25 +0200] "GET /favicon.ico HTTP/1.1" 304 0 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_4) AppleWebKit/536.11 (KHTML, like Gecko) Chrome/20.0.1132.57 Safari/536.11"
<ip> - - [17/Jul/2012:11:21:28 +0200] "GET /index.php HTTP/1.1" 403 46 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_4) AppleWebKit/536.11 (KHTML, like Gecko) Chrome/20.0.1132.57 Safari/536.11"
<ip> - - [17/Jul/2012:11:21:34 +0200] "-" 400 0 "-" "-"
php-fpm log:
[17-Jul-2012 10:44:14] NOTICE: fpm is running, pid 4969
[17-Jul-2012 10:44:14] NOTICE: ready to handle connections