OpenBSDでrcctlを使用してhttpdが自動的に起動するように正しく有効にする方法は?

OpenBSDでrcctlを使用してhttpdが自動的に起動するように正しく有効にする方法は?

OpenBSD 6.2 amd64 を実行している OpenBSD システムでは、rcctl を使用して httpd を起動できません。

# rcctl start httpd
httpd(failed)

しかし、最初の入力を開始すると動作しますhttpdが、正しい方法ではないようです。/var/log/messagesプロンプトは含まれず、他のファイルも含まれません/var/log/

私は/etc/httpd.conf比較的簡単です。

server "default" {
        listen on * port 80
}

/var/www/var/www/htdocs手動起動時に提供されるファイルが存在し、含まれています。 「root」を指定しても/etc/httpd.conf効果はありません。

httpd自動的に有効/開始するにはどうすればよいですかrcctl

ベストアンサー1

問題はhttpdデーモンに無効なコマンドライン引数(ひもYESrcctl) そのため、使用を開始すると正しく起動できません。


XXX_flags変数の唯一の「特殊」値は、そのサービスを無効にする/etc/rc.conf.local2文字の文字列です。NOこれはほとんどのOpenBSDサービスのデフォルトです(注/etc/rc.confいいえ調整)。

rcctlたとえば、ルートIDを使用してサービスを有効にします。

# rcctl enable httpd

この場合、httpd次の行が作成されます。

httpd_flags=

に切り替える/etc/rc.conf.localと、サービスが有効になりますhttpd

値は起動時にhttpd_flags実際のデーモンに渡されます。httpdたとえば、代替構成ファイルを読み取ることができます。

httpd_flags=-f /etc/httpd.conf.local

rcctl/etc/rc.conf.local次のように変更できます。

# rcctl set httpd flags -f /etc/httpd.conf.local

エディタを使って直接rcctl修正するよりも活用する方が良いです。/etc/rc.conf.local

おすすめ記事