HTTPD(8)

πŸ’– HTTPD β€” the Cyrus IMAP HTTP server, bestie edition πŸ’–

okay so this is httpd, straight out of the Cyrus IMAP manual (section 8, system admin commands, iykyk). It's the HTTP server process and she is serving πŸ’…


✨ SYNOPSIS ✨

httpd [ -C config-file ] [ -U uses ] [ -T timeout ] [ -D ]
    [ -H ] [ -s ] [ -p ssf ] [ -q ]

🌸 DESCRIPTION 🌸

So. httpd is an HTTP server. That's the whole vibe. It takes commands on its standard input and responds on its standard output β€” that's it, that's the relationship.

IMPORTANT THO: it MUST be invoked by master(8), with those descriptors attached to a remote client connection. Like, you can't just run it yourself and expect main character energy. master(8) is the one holding the aux cord. 🎧

It reads its configuration options out of the imapd.conf(5) file, unless you tell it otherwise with -C.

And here's a little niche detail that's lowkey iconic: if the directory <configdirectory>/log/user exists, then httpd will create protocol telemetry logs for sessions authenticating as user. Those telemetry logs get stored in the log/user directory, and the filename is just the httpd process-id. Tracking her every move, honestly. πŸ‘€


πŸŽ€ OPTIONS πŸŽ€

  • -C config-file β€” use the config-file you specify instead of the default imapd.conf(5). You're the one choosing today. πŸ‘‘
  • -U uses β€” the max number of times the process should be used for new connections before it shuts down. The default is 250. She has limits, and honestly, same.
  • -T timeout β€” the number of seconds the process will wait for a new connection before shutting down. Heads up bestie: a value of 0 (zero) will disable the timeout entirely. The default is 60.
  • -D β€” run the external debugger specified in debug_command. Detective mode. πŸ”
  • -H β€” tell httpd to expect a HAProxy protocol header from the sender.
  • -s β€” serve HTTP over SSL (https). All data to and from httpd is encrypted using the Secure Sockets Layer. Privacy era. πŸ”
  • -p ssf β€” tell httpd that an external layer exists. An SSF (security strength factor) of 1 means an integrity protection layer exists. Any higher SSF implies some form of privacy protection.
  • -q β€” ignore quotas on DAV appends. This feature was introduced in version 3.0. Quota? Don't know her. πŸ™ˆ

🌈 EXAMPLES 🌈

httpd is commonly included in the SERVICES section of cyrus.conf(5), like so:

SERVICES {
    imap        cmd="imapd -U 30" listen="imap" prefork=0
    imaps       cmd="imapd -s -U 30" listen="imaps" prefork=0 maxchild=100
    lmtpunix    cmd="lmtpd" listen="/var/run/cyrus/socket/lmtp" prefork=0 maxchild=20
    sieve       cmd="timsieved" listen="sieve" prefork=0
    notify      cmd="notifyd" listen="/var/run/cyrus/socket/notify" proto="udp" prefork=1
    httpd       cmd="httpd" listen=8080 prefork=1 maxchild=20
}

That's the group chat right there. Everyone's in it. 🫢


πŸ¦‹ HISTORY πŸ¦‹

A beta release of httpd was first introduced in the caldav branch of Cyrus in version 2.4.17, and was included in the mainline releases beginning in version 2.5.0.

The quota override option, -q, was introduced with Cyrus version 3.0.

So she's been around. She's got lore. ✨


πŸ“ FILES πŸ“

  • /etc/imapd.conf

πŸ’œ SEE ALSO πŸ’œ


πŸ‘‘ AUTHOR πŸ‘‘

The Cyrus Team, Nic Bernstein (Onlight)


1993–2026, The Cyrus Team


and that's the whole page, bestie β€” version 3.12.4, dated Sep 09, 2026, filed under HTTPD(8) in section 8. no cap. πŸ’–βœ¨πŸŽ€

πŸ“¦ where this page comes from