2017-03-02 13 views
0

ローカルmacosマシンでnginxの新しい仮想ホストを設定していますので、既存のディレクトリとしてルートディレクトリを/Users/abcdに指定する必要があります。ユーザディレクトリにnginx仮想ホストルートを持っています

は、私が試した:

root /Users/abcd/GitHub/rails/public; 

しかし、私は得続ける:

*1 stat() "/Users/abcd/GitHub/rails/public/" failed (13: Permission denied) 

がどのように私はこの問題を解決することができますか?新しい仮想ホストを追加するたびにこれを行うのは面倒でエラーが起こりやすいので、ディレクトリへのアクセス許可を手動で変更する必要はありません。

+0

ユーザーのグループにnginxユーザー(www-data)を追加しますか? – unNamed

+0

www-dataがnginxユーザーであることと、ユーザーのグループにどのように追加するのか(どのユーザーですか?) – linkyndy

+0

configのuserディレクティブまたは:ps aux | grep nginx – unNamed

答えて

1

私はOPは彼がdoes notと言います知っているアクセス許可を変更することをお勧めしますが、それはあなたがすべき最初のことです。 OPに答えるために今

situataion:

user abcd; 

をnginx.confするには、以下の行を追加します。今すぐnginxのサービスを再起動します。 nginx.conf

user www-data; 

+0

は、1人のユーザーにのみ動作し、すべてではありません。 – unNamed

+0

@unNamed私はそれを手に入れませんでした、詳しく教えてください。 –

+0

アクセス権は、ユーザー「abcd」がアクセスできる場所でのみ許可されます。デフォルトのような他のディレクトリはもはや動かないでしょう。 – unNamed

0

次に、あなたは、ユーザーのグループにWWW-データを追加します。

adduser www-data abcd 

をあなたはあなただけの追加公開するホームディレクトリmultibleユーザーがいる場合www-dataユーザーをユーザーグループに追加します。

adduser www-data <usergroup> 
+0

残念ながら、最初のコマンドは機能しません: 'getpwnam(" www-data ")は/usr/local/etc/nginx/nginx.confで失敗しました:3' – linkyndy

+0

ユーザwww-dataはおそらく存在しません。その目的のために新しいユーザーを作成することができます:useradd www-data – unNamed

+0

私は自分自身を使用しようとすると同じことになります。しかし、私はMacOSがnginxが期待しているのとは異なる方法でユーザを扱うという印象を受けています... – linkyndy

関連する問題