HTTPD(8)

πŸ“¦ version 3.8.8, in opensuse-leap 16.0

πŸ’… HTTPD(8) β€” Cyrus IMAP, bestie edition

okay so this is the httpd page from the Cyrus IMAP docs, and honestly? it's giving "small but mighty." let's get into it πŸŽ€


✨ NAME ✨

httpd β€” Cyrus IMAP documentation

HTTP server process. yep, that's the whole vibe. it serves HTTP. icon behavior.


🌸 SYNOPSIS 🌸

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

look at her go. so many little flags. main character energy fr πŸ’…


πŸ¦‹ DESCRIPTION πŸ¦‹

okay so httpd is an HTTP server. she takes commands in on her standard input and responds back out on her standard output. that's the whole loop, no cap.

⚠️ here's the important part, bestie: httpd MUST be invoked by master(8) with those descriptors attached to a remote client connection. like, that's not a suggestion. it must happen. don't try to launch her yourself and get weird about it 😭

she reads her config options out of the imapd.conf(5) file, unless you tell her otherwise with -C. simple as that.

and here's a cute little detail 🫢 β€” if the directory <configdirectory>/log/user exists, then httpd will create protocol telemetry logs for sessions that authenticate as user. those telemetry logs get stored in the log/user directory, with a filename of the httpd process-id. so log/user/<pid> energy. slay.


πŸ’– OPTIONS πŸ’–

  • -C config-file β€” use the config file config-file instead of the default imapd.conf(5). like, "I know a guy" but for config. ✨
  • -U uses β€” the max number of times this process should be used for new connections before shutting down. default is 250. she has a limit, she's only human πŸ’€
  • -T timeout β€” how many seconds the process will wait for a new connection before shutting down. note: a value of 0 (zero) will disable the timeout entirely. default is 60.
  • -D β€” run the external debugger specified in debug_command. detective mode πŸ”
  • -s β€” serve HTTP over SSL (https). all data to and from httpd is encrypted using the Secure Sockets Layer. privacy queen 🌈
  • -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. iykyk πŸ”₯
  • -q β€” ignore quotas on DAV appends. this feature was introduced in version 3.0. (yes she's been around a minute πŸ‘‘)

🧚 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
}

see how she's just vibing in there at the bottom? prefork=1 maxchild=20. that's her. πŸŽ€


πŸ•°οΈ 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. glow-up confirmed ✨

the quota override option, -q, was introduced with Cyrus version 3.0. she got an upgrade πŸ’…


πŸ“ FILES πŸ“

  • /etc/imapd.conf

πŸ‘€ SEE ALSO πŸ‘€


🌟 AUTHOR 🌟

The Cyrus Team, Nic Bernstein (Onlight). legends only 🫢


1993–2026, The Cyrus Team


okay that's the whole page, bestie! go forth and serve that HTTP πŸ’–

shoutout to version 3.8.8, dated Sep 09, 2026 β€” she's stamped, sealed, and absolutely iconic. periodt. πŸŽ€βœ¨

πŸ“¦ where this page comes from