LINUX.ORG.RU

Как исправить ошибку в Nginx

 ,


0

1

При обращении к php-файлам в логах возникает следующая ошибка:

2016/01/13 10:25:42 [error] 3372#0: *53 testing "/etc/nginx/html" existence failed (2: No such file or directory) while logging request, client: 192.168.1.49, server: *.site.loc, request: "GET /index.php?=PHPE9568F35-D428-11d2-A769-00AA001ACF42 HTTP/1.1", upstream: "fastcgi://127.0.0.1:9000", host: "test.site.loc", referrer: "http://test.site.loc/"

Нагуглил вроде бы ответ но что то не понимаю что нужно и где править? Как уже стало понятно - я новичек и только вчера «открыл» nginx для себя! Строго не пинайте. Натолкните на путь истинный.


Ах да. забыл выложить строчки из конфига:

set $root_path /home/projects/site.loc/www;
 
if ($host ~ "^(.*)\.site\.loc$") {
    set $root_path /home/projects/site.loc/subdomains/$1;
}
Причем на html файлах все нормально логируется, и ошибки соответственно не возникает.

xisip
() автор топика
Ответ на: комментарий от surefire

Прошу прощения, разумеется будет:

server {
    listen       80;
    server_name  *.site.loc site.loc;
    
    set $root_path /home/projects/site.loc/www;

    if ($host ~ "^(.*)\.site\.loc$") {       
        set $root_path /home/projects/site.loc/subdomains/$1;
    }
    
    charset utf-8;
    client_max_body_size 128M;

    access_log /home/projects/site.loc/logs/access/$host.log main;
    error_log /home/projects/site.loc/logs/error/error.log error;

    location / {
        root $root_path;
        try_files $uri $uri/ /index.php?$args;
        index  index.html index.htm index.php;
    }

    location ~ \.php {
	fastcgi_pass 127.0.0.1:9000;
	fastcgi_index /index.php;
	include /etc/nginx/fastcgi_params;
	fastcgi_split_path_info       ^(.+\.php)(/.+)$;
        fastcgi_param SCRIPT_FILENAME $root_path$fastcgi_script_name;        
    }

    location ~ /\.(ht|svn|git) {
        deny all;
    }
}

xisip
() автор топика
Ответ на: комментарий от xisip

Причем самое странное что если поместить в директорию html файл и обратиться к нему - логи работают как и ожидалось. А с php файлами какая то беда. Пробовал уже класть файлы на один уровень с root. Так как судя по документации лог не создается если нет корневой директории. Но что то и тут безуспешно. Ребят, как быть, чего делать?

xisip
() автор топика
Ответ на: комментарий от xisip

Нужно root класть на одном уровне с access_log в конфиге а я настраивал уровень расположения файлов. Тогда все логируется как и ожидалось.

xisip
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.