Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
| Comment: | Moved the "Serving via althttpd" material from www/ssl.wiki to a new document, www/server/any/althttpd.md, linked from www/server.wiki. |
|---|---|
| Downloads: | Tarball | ZIP archive |
| Timelines: | family | ancestors | descendants | both | server-docs |
| Files: | files | file ages | folders |
| SHA3-256: |
2e19fcee33b3268eb22d7256955560fb |
| User & Date: | wyoung 2019-08-16 10:11:12.245 |
Context
|
2019-08-16
| ||
| 10:19 | Several small refinements to prior check-ins. ... (check-in: 16e3cff648 user: wyoung tags: server-docs) | |
| 10:11 | Moved the "Serving via althttpd" material from www/ssl.wiki to a new document, www/server/any/althttpd.md, linked from www/server.wiki. ... (check-in: 2e19fcee33 user: wyoung tags: server-docs) | |
| 09:55 | Added some named anchors to www/server/any/stunnel.md ... (check-in: ce4b4bae31 user: wyoung tags: server-docs) | |
Changes
Changes to www/server.wiki.
| ︙ | ︙ | |||
49 50 51 52 53 54 55 |
We've broken the configuration for each method out into a series of
sub-articles, some of which are OS-specific:
</blockquote>
<table style="margin-left: 6em;">
<tr>
<th> </th>
| | > > > > | 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 |
We've broken the configuration for each method out into a series of
sub-articles, some of which are OS-specific:
</blockquote>
<table style="margin-left: 6em;">
<tr>
<th> </th>
<th colspan="11" style="background-color: #efefef">Fossil Front-End Program</th>
</tr>
<tr>
<th style="background-color: #e8e8e8; padding: 6px; text-align: right">Host OS</th>
<th>none</th>
<th>inetd</th>
<th>xinetd</th>
<th>stunnel</th>
<th>CGI</th>
<th>SCGI</th>
<th>althttpd</th>
<th>nginx</th>
<th>Apache</th>
<th>IIS</th>
<th>OS service</th>
</tr>
<tr>
<th style="background-color: #e8e8e8; padding: 6px; text-align: right">Any</th>
<td style="text-align: center"><a href="./server/any/none.md">✅</a></td>
<td style="text-align: center"><a href="./server/any/inetd.md">✅</a></td>
<td style="text-align: center"><a href="./server/any/xinetd.md">✅</a></td>
<td style="text-align: center"><a href="./server/any/stunnel.md">✅</a></td>
<td style="text-align: center"><a href="./server/any/cgi.md">✅</a></td>
<td style="text-align: center"><a href="./server/any/scgi.md">✅</a></td>
<td style="text-align: center"><a href="./server/any/althttpd.md">✅</a></td>
<td style="text-align: center">❌</td>
<td style="text-align: center">❌</td>
<td style="text-align: center">❌</td>
<td style="text-align: center">❌</td>
</tr>
<tr>
<th style="background-color: #e8e8e8; padding: 6px; text-align: right">Debian/Ubuntu</th>
<td style="text-align: center"><a href="./server/any/none.md">✅</a></td>
<td style="text-align: center"><a href="./server/any/inetd.md">✅</a></td>
<td style="text-align: center"><a href="./server/any/xinetd.md">✅</a></td>
<td style="text-align: center"><a href="./server/any/stunnel.md">✅</a></td>
<td style="text-align: center"><a href="./server/any/cgi.md">✅</a></td>
<td style="text-align: center"><a href="./server/any/scgi.md">✅</a></td>
<td style="text-align: center"><a href="./server/any/althttpd.md">✅</a></td>
<td style="text-align: center"><a href="./server/debian/nginx.md">✅</a></td>
<td style="text-align: center">❌</td>
<td style="text-align: center">❌</td>
<td style="text-align: center">❌</td>
</tr>
<tr>
<th style="background-color: #e8e8e8; padding: 6px; text-align: right">Windows</th>
<td style="text-align: center">❌</td>
<td style="text-align: center">❌</td>
<td style="text-align: center">❌</td>
<td style="text-align: center"><a href="./server/windows/stunnel.md">✅</a></td>
<td style="text-align: center">❌</td>
<td style="text-align: center">❌</td>
<td style="text-align: center">❌</td>
<td style="text-align: center">❌</td>
<td style="text-align: center">❌</td>
<td style="text-align: center">❌</td>
<td style="text-align: center"><a href="./server/windows/service.md">✅</a></td>
</tr>
|
| ︙ | ︙ |
Added www/server/any/althttpd.md.
> > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 |
# Serving via althttpd
The public SQLite and Fossil web sites are not purely served by Fossil
for two reasons:
1. We want access to these sites to be secured with TLS, which we do
[via `stunnel`](./stunnel.md).
2. Parts of these web sites are static, stored as plain files on disk,
not as Fossil artifacts. We serve such files using a separate web
server called [`althttpd`][ah], written by the primary author of
both SQLite and Fossil, D. Richard Hipp. `althttpd` is a lightweight
HTTP-only web server. It handles the static HTTP hits on
<tt>sqlite.org</tt> and <tt>fossil-scm.org</tt>, delegating HTTPS
hits to `stunnel` and dynamic content hits to Fossil [via
CGI][cgi].
The largest single chunk of static content served directly by `althttpd`
rather than via Fossil is the [SQLite documentation][sd], which is built
[from source files][ds]. We don’t want those output files stored in
Fossil; we already keep that process’s *input* files in Fossil. Thus the
choice to serve the output statically.
In addition to the [server’s documentation page][ah], there is a large,
helpful header comment in the server’s [single-file C
implementation][ac]. Between that and the generic [Serving via CGI][cgi]
docs, you should be able to figure out how to serve Fossil via
`althttpd`.
[ac]: https://sqlite.org/docsrc/file/misc/althttpd.c
[ah]: https://sqlite.org/docsrc/doc/trunk/misc/althttpd.md
[cgi]: ./cgi.md
[ds]: https://sqlite.org/docsrc/
[sd]: https://sqlite.org/docs.html
|
Changes to www/ssl.wiki.
| ︙ | ︙ | |||
214 215 216 217 218 219 220 | <h3 id="stunnel">stunnel Alone</h3> That's covered [./server/any/stunnel.md | elsewhere]. <h3 id="althttpd">stunnel + althttpd</h3> | < < < < < < < < | < < < < < < < < < | 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 | <h3 id="stunnel">stunnel Alone</h3> That's covered [./server/any/stunnel.md | elsewhere]. <h3 id="althttpd">stunnel + althttpd</h3> That's covered [./server/any/althttpd.md | elsewhere]. <h3 id="nginx">nginx</h3> If your needs are more complex than althttpd can handle or you'd prefer to use only software available in your server operating system's package repository, we recommend that you step up to [http://nginx.org/|nginx]. |
| ︙ | ︙ |