NGINX и права доступа
NGINX и права доступа
Добрый день.
у меня на сервере под управлением VestaCP несколько сайтов под Битриксом.
Всё работает нормально, но с появлением 2-го и 3-го сайта заметил, что сервер иногда падает, начал анализировать логи сайтов (которые чаще всего падали, под падали я имею ввиду отсутствие доступа типа Bad gateway) и заметил такие вот записи:
т.е. nginx не имеет доступа к файлам, а соответственно не отдаёт файлы напрямую - чем, как я думаю грузит сервер
Может я и не прав в этом суждении, но начав копать вопрос почему nginx не имеет доступа наткнулся на то, что запускаясь nginx работает только под пользователем, указанным в /etc/nginx/nginx.conf:
если сайт один, то можно указать пользователя под которым работает сайт и всё работает нормально, но если сайтов несколько...
под пользователями, под которыми работают сайты nginx не имеет доступа к файлам этих сайтов (почему не понимаю ведь права 0644 предоставляют чтение для всех).
начав искать проблему, обнаружил кучу решений под fast-cgi - но это не мой вариант
к примеру http://phpclub.ru/talk/threads/nginx-1- ... ied.78437/
там же указывалось на то, что nginx должен обращаться к файлам с правами под которым он запущен, про права доступа (для fast-cgi):
про группы пользователей:
перезапустил nginx и...
ошибки пропали!!!
отсюда вопрос - может надо чтоб при добавлении и редактировании пользователей в панели не только конфиги прописывались, но ещё и пользователь nginx (или другой под которым запускается nginx) добавлялся в группу пользователя-владельца сайта? (и удалялся если nginx отключается)
Может я в чём-то не прав конечно... - поправьте меня и разъясните.
у меня на сервере под управлением VestaCP несколько сайтов под Битриксом.
Всё работает нормально, но с появлением 2-го и 3-го сайта заметил, что сервер иногда падает, начал анализировать логи сайтов (которые чаще всего падали, под падали я имею ввиду отсутствие доступа типа Bad gateway) и заметил такие вот записи:
Code: Select all
2015/08/11 17:29:25 [crit] 26010#0: *120 open() "/home/user/web/site.com/public_html/robots.txt" failed (13: Permission denied), client: 207.46.13.76, server: user.com, request: "GET /robots.txt HTTP/1.1", host: "user.com"
Может я и не прав в этом суждении, но начав копать вопрос почему nginx не имеет доступа наткнулся на то, что запускаясь nginx работает только под пользователем, указанным в /etc/nginx/nginx.conf:
Code: Select all
user nginx;
под пользователями, под которыми работают сайты nginx не имеет доступа к файлам этих сайтов (почему не понимаю ведь права 0644 предоставляют чтение для всех).
начав искать проблему, обнаружил кучу решений под fast-cgi - но это не мой вариант
к примеру http://phpclub.ru/talk/threads/nginx-1- ... ied.78437/
там же указывалось на то, что nginx должен обращаться к файлам с правами под которым он запущен, про права доступа (для fast-cgi):
Code: Select all
listen.owner = www-data
listen.group = www-data
listen.mode = 0660
и тут я решил добавить пользователя под которым запущен nginx у меня в группу пользователя под которым запущен сайтПроверить, что nginx добавлен в группу или работает от группы www-data.
Code: Select all
usermod -a -G user nginx
ошибки пропали!!!
отсюда вопрос - может надо чтоб при добавлении и редактировании пользователей в панели не только конфиги прописывались, но ещё и пользователь nginx (или другой под которым запускается nginx) добавлялся в группу пользователя-владельца сайта? (и удалялся если nginx отключается)
Может я в чём-то не прав конечно... - поправьте меня и разъясните.
Re: NGINX и права доступа
Страшно прожорливая штука этот ваш битрикс :)miami wrote: у меня на сервере под управлением VestaCP несколько сайтов под Битриксом.
Анализ - хорошо конечно, а загрузку не смотрели? Процессор, память?miami wrote:Всё работает нормально, но с появлением 2-го и 3-го сайта заметил, что сервер иногда падает, начал анализировать логи сайтов (которые чаще всего падали, под падали я имею ввиду отсутствие доступа типа Bad gateway) и заметил такие вот записи:
Вообще bad gateway - nginx передал запрос бэкенду, а тот по какой-то причине не смог ответить.
И что с правами? Кто владелец, какие стоят разрешения?miami wrote:т.е. nginx не имеет доступа к файлам, а соответственно не отдаёт файлы напрямую - чем, как я думаю грузит серверCode: Select all
2015/08/11 17:29:25 [crit] 26010#0: *120 open() "/home/user/web/site.com/public_html/robots.txt" failed (13: Permission denied), client: 207.46.13.76, server: user.com, request: "GET /robots.txt HTTP/1.1", host: "user.com"
Re: NGINX и права доступа
Пардон, откуда это? По умолчанию user - www-datamiami wrote: Может я и не прав в этом суждении, но начав копать вопрос почему nginx не имеет доступа наткнулся на то, что запускаясь nginx работает только под пользователем, указанным в /etc/nginx/nginx.conf:Code: Select all
user nginx;
Каким образом у вас стал другим?
Неплохо бы посмотреть - кто владелец и какие точно разрешения стоят. chown / chmod не повредит.miami wrote:если сайт один, то можно указать пользователя под которым работает сайт и всё работает нормально, но если сайтов несколько...под пользователями, под которыми работают сайты nginx не имеет доступа к файлам этих сайтов (почему не понимаю ведь права 0644 предоставляют чтение для всех).
Конечно вы можете, если хотите, но на моей практике (весьма обширной, причем не только с VestaCP) такого не было. Потому имеет смысл поискать причину, она где-то в настройках, определенно.miami wrote:отсюда вопрос - может надо чтоб при добавлении и редактировании пользователей в панели не только конфиги прописывались, но ещё и пользователь nginx (или другой под которым запускается nginx) добавлялся в группу пользователя-владельца сайта? (и удалялся если nginx отключается)
В чем-то определенно не прав :)miami wrote:Может я в чём-то не прав конечно... - поправьте меня и разъясните.
Почему? Потому что что-то таки не работает.
Re: NGINX и права доступа
есть такоеskurudo wrote: Страшно прожорливая штука этот ваш битрикс :)
Естественно!skurudo wrote: Анализ - хорошо конечно, а загрузку не смотрели? Процессор, память?
Вообще bad gateway - nginx передал запрос бэкенду, а тот по какой-то причине не смог ответить.
даже на половину не загружается ни по статистике, ни при тестировании и нагрузке сайта
Права 0755 на каталоги и 0644 на файлы, владелец user:user, если аккаунт сайта userskurudo wrote: И что с правами? Кто владелец, какие стоят разрешения?
так но и есть - просто замениз в сообщении случайноskurudo wrote: Пардон, откуда это? По умолчанию user - www-data
Каким образом у вас стал другим?
вот пример:skurudo wrote:Неплохо бы посмотреть - кто владелец и какие точно разрешения стоят. chown / chmod не повредит.
Code: Select all
drwxr-xr-x 2 user user 4096 Mar 24 10:10 about
drwxr-xr-x 2 user user 4096 Mar 24 10:10 action
drwxr-xr-x 2 user user 4096 Mar 24 10:10 auth
drwxr-xr-x 27 user user 4096 Aug 11 15:19 bitrix
drwxr-xr-x 2 user user 4096 Mar 24 10:10 brands
drwxr-xr-x 2 user user 4096 Mar 24 10:10 buy1click
drwxr-xr-x 2 user user 4096 Aug 11 18:32 catalog
drwxr-xr-x 2 user user 4096 Mar 24 10:10 cheaper
drwxr-xr-x 2 user user 4096 Mar 24 10:10 contacts
drwxr-xr-x 2 user user 4096 Mar 24 10:10 delivery
drwxr-xr-x 2 user user 4096 Mar 24 10:10 docs
drwxr-xr-x 2 user user 4096 Mar 24 10:10 email2friend
-rw-r--r-- 1 user user 1406 Apr 25 15:50 favicon.ico
drwxr-xr-x 2 user user 4096 Mar 24 10:10 feedback
drwxr-xr-x 2 user user 4096 Mar 19 14:44 include
-rw-r--r-- 1 user user 11985 Apr 25 15:50 index.php
drwxr-xr-x 2 user user 4096 Mar 19 14:44 login
drwxr-xr-x 2 user user 4096 Mar 24 10:10 mycity
drwxr-xr-x 2 user user 4096 Mar 24 10:10 nasvyazi
drwxr-xr-x 2 user user 4096 Mar 24 10:10 news
drwxr-xr-x 2 user user 4096 Mar 24 13:11 no
-rw-r--r-- 1 user user 14510 Apr 25 15:50 no_photo.png
drwxr-xr-x 2 user user 4096 Aug 6 16:58 payinfo
drwxr-xr-x 2 user user 4096 Mar 24 10:10 payment
drwxr-xr-x 9 user user 4096 Mar 24 10:10 personal
drwxr-xr-x 2 user user 4096 Mar 24 10:10 recall
-rw-r--r-- 1 user user 95005 Apr 25 15:50 restore.php
-rw-rw-r-x 1 user user 65 Apr 25 15:50 robots.txt
drwxr-xr-x 2 user user 4096 Mar 24 10:10 search
-rw-r--r-- 1 user user 1136 Apr 25 15:50 sect_inc.php
-rw-r--r-- 1 user user 969 Apr 25 15:50 sect_search.php
drwxr-xr-x 2 user user 4096 Mar 24 10:10 shops
drwxr-xr-x 2 user user 4096 Mar 24 15:24 site_ve
drwxr-xr-x 2 user user 4096 Mar 24 10:10 suppliers
drwxr-xr-x 8 user user 4096 Mar 25 13:18 upload
-rw-r--r-- 1 user user 1630 Aug 11 18:20 urlrewrite.php
drwxr-xr-x 2 user user 4096 Mar 24 10:10 vendors
-rw-r--r-- 1 user user 691 Apr 25 15:52 web.config
Причина ошибки 502 не в этом - буду искать дальше.skurudo wrote:Конечно вы можете, если хотите, но на моей практике (весьма обширной, причем не только с VestaCP) такого не было. Потому имеет смысл поискать причину, она где-то в настройках, определенно.
но логи перестали забиваться кучей записей об отсутствии доступа к файлам и теперь можно найти то, что надо.
Прав я получаюсь в том, что nginx не имеет доступа к этим файлам если не состоит в группе пользователя аккаунта - отсюда как предложение добавлять в группу.
с Ошибкой 502 - пока ищу дальше - зато логи хоть читать можно.
спасибо за ответы
Re: NGINX и права доступа
Есть предложение поглядеть, есть ли права у пользователя в /home/user/tmp
Re: NGINX и права доступа
сами каталоги внутри /home/user/:skurudo wrote:Есть предложение поглядеть, есть ли права у пользователя в /home/user/tmp
Code: Select all
[root@server user]# ls -l
total 388
drwxr-xr-x 5 root root 4096 Mar 18 09:22 conf
drwxr-x--x 3 root root 4096 Mar 18 09:23 mail
drwxrwx--x 2 user user 380928 Aug 16 14:35 tmp
drwxr-x--x 3 user user 4096 Mar 18 09:23 web
[root@server user]#
Code: Select all
[root@server tmp]# ls -l
total 552
-rw------- 1 user user 929 Aug 16 08:29 sess_0e8mf66trvk1dterjgikg0qsi4
-rw------- 1 user user 1093 Aug 15 06:55 sess_0jj7r8oh8l4q92ipksal97usf0
-rw------- 1 user user 928 Aug 14 22:10 sess_0trihppnja1dmc6qhf8vpk19d5
-rw------- 1 user user 1122 Aug 15 17:43 sess_11557jrj5pfvjdb3nrrp850da1
-rw------- 1 user user 1092 Aug 15 07:54 sess_163datk06sl4a0rlh3itd4rl52
-rw------- 1 user user 929 Aug 14 17:40 sess_1e2hi2tffi5k6acsb1m6k4i662
-rw------- 1 user user 2484 Aug 14 12:26 sess_1f008bffea8f678670147a9a88a6eb23
-rw------- 1 user user 929 Aug 15 02:28 sess_1ggiu4l46jm0n2i804o5re1cl6
-rw------- 1 user user 1122 Aug 16 11:58 sess_1kkcndid65g3vktao7mhoj1gk7
-rw------- 1 user user 1111 Aug 15 12:28 sess_1of8isie3hmqva6lfmgh7ce652
-rw------- 1 user user 1093 Aug 14 16:44 sess_1qesdkanj6ic9pa76ldefiakm7
-rw------- 1 user user 1114 Aug 15 09:21 sess_1r7q434i20p167vnv4dtsubg54
-rw------- 1 user user 1170 Aug 15 02:54 sess_20aibn8n28t8qt9s19ml7kh304
-rw------- 1 user user 1111 Aug 16 10:52 sess_24n9jrj6vu3m8q9jmr9eb4h0m5
-rw------- 1 user user 1122 Aug 15 21:47 sess_251c9lmqpieheo9vk3p0iuhum0
-rw------- 1 user user 929 Aug 15 02:05 sess_2ice9tmhr1onncs82sraomg4i1
-rw------- 1 user user 1123 Aug 16 13:50 sess_32i0lpvf5v33kknv441ib32t54
-rw------- 1 user user 1122 Aug 16 10:52 sess_33hupb750453dfk1gklu35br75
-rw------- 1 user user 1108 Aug 15 03:45 sess_3afotln54i8tqpo8l7lsl0igi6
-rw------- 1 user user 1122 Aug 16 04:36 sess_3rvcdm6ejsgtd7kuod4b65dvc0
-rw------- 1 user user 1122 Aug 14 14:04 sess_3sqoo0lteacc49v1nhn6afi907
-rw------- 1 user user 1122 Aug 15 14:09 sess_4535iencgvk0guvoho9bmlo660
-rw------- 1 user user 1112 Aug 15 02:05 sess_4dp941uo3kuum8kfbolpec42p4
-rw------- 1 user user 1139 Aug 15 19:51 sess_4i6gfq9mh6tachii02l34l7gl0
-rw------- 1 user user 1122 Aug 16 11:21 sess_5feg7dqeu8urach0m5q177sci3
-rw------- 1 user user 1122 Aug 15 22:12 sess_5hkfgpd6pd28f6mp6ikcg86tt4
-rw------- 1 user user 929 Aug 15 05:05 sess_5l1ddlvr5m2sa5t23n9n2mjpc7
-rw------- 1 user user 1092 Aug 16 02:18 sess_5u7dhekfbr85b10gh6e1u0b1q1
-rw------- 1 user user 1122 Aug 16 07:02 sess_64nvcm8maq0piq9kgrsup8h3l2
-rw------- 1 user user 1122 Aug 16 06:21 sess_6qee5ctg6mdqb54bi503pb30b7
-rw------- 1 user user 1133 Aug 15 01:49 sess_71orrun6lff309lnsf2ds8jt63
-rw------- 1 user user 1122 Aug 15 18:14 sess_7fg9bjshauv891vl6dksvs33g3
-rw------- 1 user user 1092 Aug 14 07:12 sess_7iadisv6kf7n1i4r2ni370k2t1
-rw------- 1 user user 1120 Aug 15 23:49 sess_7lpmlbthkfgtill0tbnpp2mq24
-rw------- 1 user user 1122 Aug 15 17:42 sess_7umvj5nlss4in3oi302evssat3
-rw------- 1 user user 1122 Aug 15 20:19 sess_81v29mshsr1t2blbr7dcfqv281
-rw------- 1 user user 1122 Aug 16 02:09 sess_85am1mcj7cogum6o7kcqqbog46
-rw------- 1 user user 1115 Aug 15 08:57 sess_8grrkbgqasq6fbu60e86uudki3
Re: NGINX и права доступа
Не очень понятно, с виду все нормально и проблем быть не должно.
Re: NGINX и права доступа
вот и я о том же,skurudo wrote:Не очень понятно, с виду все нормально и проблем быть не должно.
а ошибки выскакивали