Обсуждение настройки и работы сервисов, резервирования, сетевых настроек и вопросов безопасности ОС.
Модераторы: SLEDopit , Модераторы разделов
spool
Сообщения: 126
ОС: CentOS 6.6
Сообщение
spool » 01.03.2015 21:21
Здравствуйте. Сделал отдачу статики через nginx, но изображения, js и css не отдаются с ошибкой
Spoiler Код: Выделить всё
2015/03/01 20:06:14 [error] 29732#0: *80 open() "/home/www/cp/images/on.jpg.gz" failed (13: Permission denied), client: xx.xx.xx.xx, server: mysite.com, request: "GET /cp/images/on.jpg HTTP/1.1", host: "mysite.com", referrer: "http://mysite.com/cp/?module=user"
2015/03/01 20:06:14 [error] 29732#0: *80 open() "/home/www/cp/images/on.jpg" failed (13: Permission denied), client: xx.xx.xx.xx, server: mysite.com, request: "GET /cp/images/on.jpg HTTP/1.1", host: "mysite.com", referrer: "http://mysite.com/cp/?module=user"
2015/03/01 20:06:14 [error] 29732#0: *82 open() "/home/www/cp/images/off.jpg.gz" failed (13: Permission denied), client: xx.xx.xx.xx, server: mysite.com, request: "GET /cp/images/off.jpg HTTP/1.1", host: "mysite.com", referrer: "http://mysite.com/cp/?module=user"
2015/03/01 20:06:14 [error] 29732#0: *82 open() "/home/www/cp/images/off.jpg" failed (13: Permission denied), client: xx.xx.xx.xx, server: mysite.com, request: "GET /cp/images/off.jpg HTTP/1.1", host: "mysite.com", referrer: "http://mysite.com/cp/?module=user"
2015/03/01 20:06:14 [error] 29732#0: *80 open() "/home/www/images/cs.gif.gz" failed (13: Permission denied), client: xx.xx.xx.xx, server: mysite.com, request: "GET /images/cs.gif HTTP/1.1", host: "mysite.com", referrer: "http://mysite.com/cp/?module=user"
2015/03/01 20:06:14 [error] 29732#0: *80 open() "/home/www/images/cs.gif" failed (13: Permission denied), client: xx.xx.xx.xx, server: mysite.com, request: "GET /images/cs.gif HTTP/1.1", host: "mysite.com", referrer: "http://mysite.com/cp/?module=user"
Конфиг nginx
Spoiler Код: Выделить всё
# cat nginx.conf
user nginx;
worker_processes 4;
error_log /var/log/nginx/error.log warn;
pid /var/run/nginx.pid;
events {
worker_connections 1024;
use epoll;
}
http {
include /etc/nginx/mime.types;
default_type application/octet-stream;
log_format main '$remote_addr - $remote_user [$time_local] "$server_name" "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
access_log /var/log/nginx/access.log main;
error_log /var/log/nginx/error.log crit;
sendfile on;
tcp_nopush on;
server_tokens off;
keepalive_timeout 65;
gzip on;
gzip_static on;
gzip_comp_level 5;
gzip_min_length 1024;
limit_conn_zone $binary_remote_addr zone=perip:10m;
limit_conn perip 100;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
include /etc/nginx/conf.d/*.conf;
server {
listen 80 default;
location ~ /.ht {
deny all;
}
location / {
proxy_pass http://127.0.0.1:8080;
}
error_page 404 /404.html;
location = /404.html {
root /usr/share/nginx/html;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
}
}
}
Конфиг сайта
Spoiler Код: Выделить всё
server {
listen ххх.ххх.ххх.ххх:80;
server_name mysite.com www.mysite.com;
location ~ /.ht {
deny all;
}
location ~* .(jpg|swf|jpeg|gif|png|css|js|ico)$ {
root /home/www;
}
location / {
proxy_pass http://127.0.0.1:8080;
}
}
Т.е. не отдает все то, что прописано в location. Подскажите, пожалуйста, где проблема. Заранее благодарен.
Bizdelnick
Модератор
Сообщения: 21498
Статус: nulla salus bello
ОС: Debian GNU/Linux
Сообщение
Bizdelnick » 01.03.2015 21:24
Видимо, юзеру nginx не хватает прав на чтение файлов.
Пишите правильно:
в консоли
вк у́пе (с чем-либо)
в о бщем
воо бще в течение (часа)
новичо к
ню анс
по у молчанию приемле мо
проблем а
пробо вать
траф ик
spool
Сообщения: 126
ОС: CentOS 6.6
Сообщение
spool » 01.03.2015 21:33
На файлах стоит 644. В случае с другими доменами все отдается нормально, хотя на тех файлах также стоит 644 и принадлежат они пользователю, отличному от nginx. Правда в случае с проблемными файлами они принадлежат пользователю apache. Возможно, это как-то связано.
Bizdelnick
Модератор
Сообщения: 21498
Статус: nulla salus bello
ОС: Debian GNU/Linux
Сообщение
Bizdelnick » 01.03.2015 21:53
А на каталог какие права?
Пишите правильно:
в консоли
вк у́пе (с чем-либо)
в о бщем
воо бще в течение (часа)
новичо к
ню анс
по у молчанию приемле мо
проблем а
пробо вать
траф ик
spool
Сообщения: 126
ОС: CentOS 6.6
Сообщение
spool » 01.03.2015 23:21
Bizdelnick
Действительно, не досмотрел. Поставил 755, но ситуацию это не решило.
Еще такая беда периодически появляется
Код: Выделить всё
2015/03/01 22:22:06 [warn] 3370#0: *135 an upstream response is buffered to a temporary file /var/cache/nginx/proxy_temp/3/00/0000000003 while reading upstream
drBatty
Сообщения: 8735
Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
ОС: Slackware-current
Сообщение
drBatty » 01.03.2015 23:44
spool писал(а): ↑ 01.03.2015 21:33
На файлах стоит 644.
попробуйте зайти из рута в nginx
Shell
root@host # su - nginx
nginx@host $ cp /home/www/cp/images/on.jpg.gz /tmp/
если прав не хватит, смотрите права всех каталогов, должен быть выставлен бит +x (на каталогах). Если хозяин и группа каталога не nginx, то бит +x должен быть выставлен на
o ther
spool
Сообщения: 126
ОС: CentOS 6.6
Сообщение
spool » 01.03.2015 23:58
drBatty
На всех директориях стоит 755
От nginx все копируется без проблем
Bizdelnick
Модератор
Сообщения: 21498
Статус: nulla salus bello
ОС: Debian GNU/Linux
Сообщение
Bizdelnick » 02.03.2015 01:12
spool писал(а): ↑ 01.03.2015 23:21
Еще такая беда периодически появляется
Код: Выделить всё
2015/03/01 22:22:06 [warn] 3370#0: *135 an upstream response is buffered to a temporary file /var/cache/nginx/proxy_temp/3/00/0000000003 while reading upstream
Это беда?
http://nginx.org/ru/docs/http/ngx_http_pro...proxy_buffering
Пишите правильно:
в консоли
вк у́пе (с чем-либо)
в о бщем
воо бще в течение (часа)
новичо к
ню анс
по у молчанию приемле мо
проблем а
пробо вать
траф ик
spool
Сообщения: 126
ОС: CentOS 6.6
Сообщение
spool » 02.03.2015 09:20
Bizdelnick
Действительно. Тогда не понятно, почему обозначается как warn
spool
Сообщения: 126
ОС: CentOS 6.6
Сообщение
spool » 02.03.2015 10:44
Странно, но сейчас все работает нормально, судя по всему. Спасибо за помощь.
Bizdelnick
Модератор
Сообщения: 21498
Статус: nulla salus bello
ОС: Debian GNU/Linux
Сообщение
Bizdelnick » 02.03.2015 11:27
spool писал(а): ↑ 02.03.2015 09:20
не понятно, почему обозначается как warn
Видимо потому что не влезает в выделенный объём ОЗУ и может привести к замедлению работы. Стоит ли увеличивать лимит - решать админу, а дело сервера - предупредить.
Пишите правильно:
в консоли
вк у́пе (с чем-либо)
в о бщем
воо бще в течение (часа)
новичо к
ню анс
по у молчанию приемле мо
проблем а
пробо вать
траф ик
spool
Сообщения: 126
ОС: CentOS 6.6
Сообщение
spool » 02.03.2015 15:46
Bizdelnick
Подскажите, пожалуйста, как и до скольки будет оптимально увеличить, если на сервере всегда свободно около 2 гб оперы.
Bizdelnick
Модератор
Сообщения: 21498
Статус: nulla salus bello
ОС: Debian GNU/Linux
Сообщение
Bizdelnick » 02.03.2015 16:04
Не знаю. Если в IO не упираетесь, я бы ничего не менял.
Пишите правильно:
в консоли
вк у́пе (с чем-либо)
в о бщем
воо бще в течение (часа)
новичо к
ню анс
по у молчанию приемле мо
проблем а
пробо вать
траф ик
Remote Admin Service
Сообщения: 5
ОС: Linux
Сообщение
Remote Admin Service » 05.03.2015 02:53
Буферы вполне можно делать в диапазоне 64к-256к.