Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
| Comment: | Added HTTP proxying info to Debian nginx server setup guide. |
|---|---|
| Downloads: | Tarball | ZIP archive |
| Timelines: | family | ancestors | descendants | both | trunk |
| Files: | files | file ages | folders |
| SHA3-256: |
c6a033cea66f8c0208bb53d15bd39eea |
| User & Date: | wyoung 2019-08-25 13:24:49.476 |
Context
|
2019-08-28
| ||
| 16:08 | Added 'or' help for checkin/ci alias, per forum request. ... (check-in: f616380dfa user: stephan tags: trunk) | |
|
2019-08-27
| ||
| 04:15 | Make it possible to disable JSON auto-detection in the CGI subsystem. ... (check-in: a775435357 user: mistachkin tags: noJsonCgiFlag) | |
| 00:29 | Merge in documentation enhancements from trunk. ... (check-in: c1b62c3260 user: drh tags: vdiff-improvements) | |
| 00:07 | Changed all of the [anycap jor] TH1 calls in the stock skins wrapping the generation of that skin's /timeline and /timeline.rss links to [anycap ijr2] to match the user caps the timeline HTTP hit handler actually checks for in the C code. This is a branch in part because it needs review, but also it's the start of a broader effort to check the other cap checks in the skins to make sure they a) match what the C code checks for; and b) match each other. ... (check-in: 9cee8cf5c4 user: wyoung tags: skin-cap-matching) | |
|
2019-08-25
| ||
| 13:24 | Added HTTP proxying info to Debian nginx server setup guide. ... (check-in: c6a033cea6 user: wyoung tags: trunk) | |
| 12:39 | Replaced the content of "Running Fossil in SCGI Mode" within www/server/debian/nginx.md with references to our other Fossil server docs. This also reduces the prior focus of this section on fslsrv to a single sentence, since we now prefer the systemd option, now that we have it. ... (check-in: a4bb92f791 user: wyoung tags: trunk) | |
Changes
Changes to www/server/debian/nginx.md.
| ︙ | ︙ | |||
64 65 66 67 68 69 70 | ## <a name="modes"></a>Fossil Service Modes Fossil provides four major ways to access a repository it’s serving remotely, three of which are straightforward to use with nginx: * **HTTP** — Fossil has a built-in HTTP server: [`fossil | | | | < | > | 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 |
## <a name="modes"></a>Fossil Service Modes
Fossil provides four major ways to access a repository it’s serving
remotely, three of which are straightforward to use with nginx:
* **HTTP** — Fossil has a built-in HTTP server: [`fossil
server`](../any/none.md). While this method is efficient and it’s
possible to use nginx to proxy access to another HTTP server, we
don’t see any particularly good reason to make nginx reinterpret
Fossil’s own implementation of HTTP when we have a better option.
(But see [below](#http).)
* **CGI** — This method is simple but inefficient, because it launches
a separate Fossil instance on every HTTP hit.
Since Fossil is a relatively small self-contained program, and it’s
designed to start up quickly, this method can work well in a
surprisingly large number of cases.
|
| ︙ | ︙ | |||
194 195 196 197 198 199 200 201 |
repetition across `server { }` blocks when setting up multiple domains
on a single server.
The configuration for `foo.net` is similar.
See [the nginx docs](http://nginx.org/en/docs/) for more ideas.
*[Return to the top-level Fossil server article.](../)*
| > > > > > > > > > > > > > > > > > > > > > > > > | 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 |
repetition across `server { }` blocks when setting up multiple domains
on a single server.
The configuration for `foo.net` is similar.
See [the nginx docs](http://nginx.org/en/docs/) for more ideas.
## <a name="http"></a>Proxying HTTP Anyway
[Above](#modes), we argued that proxying SCGI is a better option than
making nginx reinterpret Fossil’s own implementation of HTTP. If you
want Fossil to speak HTTP, just [set Fossil up as a standalone
server](../any/none.md). And if you want nginx to [provide TLS
encryption for Fossil][tls], proxying HTTP instead of SCGI provides no
benefit.
However, it is still worth showing the proper method of proxying
Fossil’s HTTP server through nginx if only to make reading nginx
documentation on other sites easier:
location /code {
rewrite ^/code(/.*) $1 break;
proxy_pass http://127.0.0.1:12345;
}
The most common thing people get wrong when hand-rolling a configuration
like this is to get the slashes wrong. Fossil is senstitive to this. For
instance, Fossil will not collapse double slashes down to a single
slash, as some other HTTP servers will.
*[Return to the top-level Fossil server article.](../)*
|