web-dev-qa-db-ja.com

Nginx PHP-fpm権限

Nginx.confのユーザーをルートルートに設定している場合:

user  root root;

その後、私のWebサイトは機能していますが、nginx nginxに設定すると、ログにエラーが表示されます。

unix:/var/run/php-fpm/php-fpm.sockへのconnect()が失敗しました(13:権限が拒否されました)

私はPHP-FPM 5.5を使用しています。フォルダーの所有者がnginxであり、実行権限が有効になっていることを確認しました。

私は何が欠けていますか?どうも

-----------------編集:

php-fpm.sockの権限を手動で変更する場合のクイック編集は機能しています。適切な権限でphp-hpmを起動するにはどうすればよいですか?

3
Danny Valariola

この問題に関連して最近開かれた2つのバグがあります。

私は個人的に、phpバージョン5.4.30のFreeBSDで最初のものを体験します。回避策として、次のようにソケットの所有者を指定するために使用可能な両方のパラメーターを適用しました。

[default]
listen = /tmp/php-fastcgi.sock
user = www
group = www
listen.owner = www
listen.group = www
listen.mode = 0660
6
MafiaInc

チェック 公式ドキュメントlisten.ownerまたはuserを使用して、unixソケットの所有者を指定できます。

listen.owner文字列

UNIXソケットが使用されている場合は、そのアクセス許可を設定します。 Linuxでは、Webサーバーからの接続を許可するために、読み取り/書き込み権限を設定する必要があります。多くのBSD派生システムは、権限に関係なく接続を許可します。デフォルト値:ユーザーとグループは実行中のユーザーとして設定され、モードは0666に設定されます。

listen.group文字列

Listen.ownerを参照してください。

user文字列

FPMプロセスのUnixユーザー。このオプションは必須です。

group文字列

FPMプロセスのUnixグループ。設定されていない場合、デフォルトのユーザーのグループが使用されます。

4
masegaloeh