FreeBSDでnginxとcgitをセットアップしようとしていますが、nginxは/var/run/fcgiwrap/fcgiwrap.sock
にアクセスできません。
私の/etc/rc.conf
ではすでにfcgiwrap_user="www"
を設定しており、www
はnginxが実行されるユーザーでもあります。
fcgiwrap.sock
を実行してwww
が所有するchown www /var/run/fcgiwrap/fcgiwrap.sock
を作成すると、すべてが希望どおりに機能します。
ただし、これはもちろんこれを行うための適切な方法ではなく、再起動するまでしか持続しません。
fcgiwrap_user="www"
を設定することでもこれが決まると思い込んでいました。
私は何かが足りないのですか?
更新:
service fcgiwrap start
またはrestart
を使用すると、メッセージStarting fcgiwrap
の後にchmod: /var/run/fcgiwrap/fcgiwrap.sock: No such file or directory
が続くことに気付きました。ただし、/var/run/fcgiwrap/fcgiwrap.sock
は後で存在します。
RCスクリプトは/usr/local/etc/rc.d/fcgiwrap
にあります。
コードを見ると、fcgiwrap_user
はデーモンを実行しているプロセスの所有者を設定します(デフォルトはroot
)。
ソケットの所有者を設定するには、fcgiwrap_socket_owner="www"
を設定する必要があります。
リチャード・スミスの答えも私のために働いたが、私の場合、私もfcgiwrap_socket_group="www"
を設定しなければならなかった。以前はfcgiwrap_user="www"
を設定するだけで十分だったため、これらの設定は新しいようです。