SSブログ

OpenBSD本家でlighttpdを動かす その2(OpenBSD 6.6R、2019/11/10) [OpenBSD]

その1でだいたいのことは終わっています。が、実はここからが一番面倒だったりします。php動作が失敗し、Permission deniedのエラーメッセージのオンパレード。まあ、原因が分かってしまえば早いのですけどね。
openbsd# cat /var/www/logs/error.log
2019-11-10 13:08:43: (gw_backend.c.236) establishing connection failed: Permission denied socket: unix:/run/php-fpm.sock
2019-11-10 13:08:45: (gw_backend.c.315) gw-server re-enabled: unix:/run/php-fpm.sock  0 /run/php-fpm.sock
2019-11-10 13:35:39: (chunk.c.523) opening temp-file failed: /tmp/lighttpd/lighttpd-upload-tgN45f Permission denied
2019-11-10 13:36:53: (chunk.c.523) opening temp-file failed: /tmp/lighttpd/lighttpd-upload-5YM4rt Permission denied
2019-11-10 13:41:04: (chunk.c.523) opening temp-file failed: /tmp/lighttpd/lighttpd-upload-QWDxGe Permission denied

原因は文字通りアクセス権限、パーミッションです。ざっと以下が揃っている必要があります。
openbsd# cat /etc/lighttpd.conf
server.username            = "_lighttpd"
server.groupname           = "_lighttpd"

openbsd# cat /etc/php-fpm.conf
;listen.owner = www
;listen.group = www
listen.owner = _lighttpd
listen.group = _lighttpd

openbsd# ls -lag /var/www/run/
srw-rw----   1 _lighttpd  _lighttpd    0 Nov 10 13:52 php-fpm.sock

openbsd# ls -lag /var/www/htdocs/
drwxr-xr-x   5 _lighttpd  _lighttpd  512 Nov 10 14:55 .
drwxr-xr-x   5 _lighttpd  _lighttpd  512 Nov 10 15:42 js-cms

openbsd# ls -lag /var/www/
drwx-----T   3 _lighttpd  _lighttpd  512 Nov 10 17:13 tmp

面倒なのは、lighttpdは“_lighttpd:_lighttpd”がデフォルトの権限としてインストールされている一方、php-fpmや/var/wwwは“www:www”がデフォルトになっているので、どちらかに統一させる必要がありました。
私は_lighttpdに統一したのですが、もしかするとwwwに統一した方が楽だったかもしれません。
最後に以下のようなエラーも出ますが、lighttpd.confにserver.upload-dirs設定の記載がないので、適当に/tmpなどと追加しておきます。
openbsd# cat /var/www/logs/error.log
2019-11-10 12:12:29: (configfile.c.1620) server.upload-dirs doesn't exist: /var/www//var/tmp

他にあるかもしれませんが、js-cmsはこれで動くようになりました。

タグ:lighttpd
nice!(0)  コメント(0) 
共通テーマ:日記・雑感

nice! 0

コメント 0

コメントを書く

お名前:
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。