Nginx пассажирский config.ru доступ - PullRequest
0 голосов
/ 12 марта 2019

я знаю, что мы не должны спрашивать дубликаты, но я искал и нашел некоторые полудубликаты, но ничего не смогло решить - поэтому здесь вопрос

Я использую centos / passenger / nginx для размещения моегорельсы приложение.Это мое первое развертывание на этом сервере (ранее были развернуты другие приложения).

Я использую Capistrano для развертывания в / home / wms / towson / текущую папку

Вот мой nginx.conf

# For more information on configuration, see:
#   * Official English Documentation: http://nginx.org/en/docs/
#   * Official Russian Documentation: http://nginx.org/ru/docs/

user wms wms;
worker_processes  1;

error_log  /var/log/nginx/error.log info;
#error_log  /var/log/nginx/error.log  notice;
#error_log  /var/log/nginx/error.log  info;

pid        /var/run/nginx.pid;

events {
    worker_connections  1024;
}

http {

    include       /etc/nginx/mime.types;
    default_type  application/octet-stream;

    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';

    access_log  /var/log/nginx/access.log  main;

    sendfile        on;
    #tcp_nopush     on;

    #keepalive_timeout  0;

    keepalive_timeout  65;

    server_tokens off;

    gzip  on;


    # Load modular configuration files from the /etc/nginx/conf.d directory.
    # See http://nginx.org/en/docs/ngx_core_module.html#include
    # for more information.

    include /etc/nginx/conf.d/*.conf;


    ####server {

        #charset koi8-r;

        ####access_log  /var/log/nginx/host.access.log  main;

        # Load configuration files for the default server block.
        ####include /etc/nginx/default.d/*.conf;

        #location / {
         #}


        # redirect server error pages to the static page /40x.html
        #
        ####error_page  404              /404.html;
        ####location = /40x.html {
        ####}

        # redirect server error pages to the static page /50x.html
        #
        ####error_page   500 502 503 504  /50x.html;
        ####location = /50x.html {
        ####}
    ####}

    server {
        listen 8080;
    access_log /var/log/nginx/host.access.log main;
        server_name <site name>;

        # Tell Nginx and Passenger where your app's 'public' directory is
        root /home/wms/towson/current/public;

        # Turn on Passenger
        passenger_enabled on;
        passenger_ruby /home/wms/.rvm/gems/ruby-2.4.0/wrappers/ruby;
        passenger_app_env production;
    passenger_user wms;
    passenger_group wms;
    }


}

Вот разрешения для моих каталогов -так как я читал в Интернете и увидел, что мы ослабили разрешения для всех родительских каталогов

/ home / wms

drwxrwxrwx. 16 wms  wms   4096 Mar 11 18:56 wms

/ home / wms / towson

drwxrwxrwx.  5 wms  wms      4096 Mar 11 18:17 towson

/ home / wms / towson / current

lrwxrwxrwx.  1 wms wms   40 Mar 11 18:17 current -> /home/wms/towson/releases/20190311231702

и, наконец, вот разрешения на содержимое / home / wms / towson / current /

drwxr-xr-x. 14 wms wms 4096 Mar 11 18:17 .
drwxr-xr-x.  7 wms wms 4096 Mar 11 18:18 ..
drwxr-xr-x. 11 wms wms 4096 Mar 11 18:16 app
drwxr-xr-x.  2 wms wms 4096 Mar 11 18:17 assets_manifest_backup
drwxr-xr-x.  2 wms wms 4096 Mar 11 18:16 bin
drwxr-xr-x.  2 wms wms 4096 Mar 11 18:17 .bundle
-rw-r--r--.  1 wms wms 1092 Mar 11 18:16 Capfile
drwxr-xr-x.  6 wms wms 4096 Mar 11 18:16 config
**-rwxrwxrwx.  1 wms wms  130 Mar 11 18:16 config.ru**
drwxr-xr-x.  3 wms wms 4096 Mar 11 18:16 db
-rw-r--r--.  1 wms wms  927 Mar 11 18:16 .DS_Store.gz
-rw-r--r--.  1 wms wms 1323 Mar 11 18:16 Gemfile
-rw-r--r--.  1 wms wms 7970 Mar 11 18:16 Gemfile.lock
-rw-r--r--.  1 wms wms  647 Mar 11 18:16 .gitignore
drwxr-xr-x.  5 wms wms 4096 Mar 11 18:16 lib
lrwxrwxrwx.  1 wms wms   27 Mar 11 18:17 log -> /home/wms/towson/shared/log
-rw-r--r--.  1 wms wms   64 Mar 11 18:16 package.json
drwxr-xr-x.  3 wms wms 4096 Mar 11 18:17 public
-rw-r--r--.  1 wms wms  227 Mar 11 18:16 Rakefile
-rw-r--r--.  1 wms wms  374 Mar 11 18:16 README.md
-rw-r--r--.  1 wms wms   41 Mar 11 18:17 REVISION
-rw-r--r--.  1 wms wms   10 Mar 11 18:16 .ruby-version
drwxr-xr-x.  2 wms wms 4096 Mar 11 18:16 storage
drwxr-xr-x.  9 wms wms 4096 Mar 11 18:16 test
drwxr-xr-x.  2 wms wms 4096 Mar 11 18:17 tmp
drwxr-xr-x.  2 wms wms 4096 Mar 11 18:16 vendor

, большинство из которых я сделалфайлы / каталоги 777 или r + разрешают выполнение, и все же каждый раз, когда я запускаю nginx с пассажиром - я продолжаю получать

2019/03/11 18:52:56 [alert] 20412#0: *1 Cannot stat **'/home/wms/towson/current/config.ru': Permission denied (errno=13); This error means that the Nginx worker process (PID 20412, running as UID 500) does not have permission to access this file. Please read this page to learn how to fix this problem:** https://www.phusionpassenger.com/library/admin/nginx/troubleshooting/?a=upon-accessing-the-web-app-nginx-reports-a-permission-denied-error; Extra info, client: 69.120.77.155, server: wms.cloudmatrix.net, request: "GET / HTTP/1.1", host: "wms.cloudmatrix.net:8080"

Я понятия не имею, что мне нужно делать дальше.Это должно быть что-то простое и очевидное - но я полностью упускаю это.

Вот выходные данные команды ps-ef для nginx и Passenger

root     20404     1  0 18:52 ?        00:00:00 nginx: master process /usr/sbin/nginx -c /etc/nginx/nginx.conf

wms 20412 20404 0 18:52?00:00:00 nginx: рабочий процесс

Он работает от имени пользователя wms.

А для пассажиров -

    root     20382     1  0 18:52 ?        00:00:00 Passenger watchdog                                                      
root     20385 20382  0 18:52 ?        00:00:00 Passenger core 

Он работает от имени пользователя root, но все мои файлы доступны для чтения всем пользователям /

Кто-нибудь знает, что я делаю неправильно ипочему я продолжаю получать разрешение на отказ.

У меня также установлен gem для пассажиров и rvm под пользователем wms на сервере.

Любая помощь будет отличной.Я почти потратил впустую день на этом.

Спасибо

...