Fossil SCM
Justified the ordering of sections in www/server/index.html by including info on complexity. CGI remains last because CGI is only a "simple" option when someone else sets up the CGI security for you, as on old-style cheap hosting plans. Also added several inline sub-document references.
Commit
9f4121db3b8033ca2d11e58079fab76bbc9cecb4e9b27cbc363a8f3aa1c5b1d3
Parent
d9ab9c567c50016…
1 file changed
+37
-15
+37
-15
| --- www/server/index.html | ||
| +++ www/server/index.html | ||
| @@ -83,11 +83,12 @@ | ||
| 83 | 83 | administrator preferences.</p> |
| 84 | 84 | |
| 85 | 85 | |
| 86 | 86 | <h3>Stand-alone HTTP Server</h3> |
| 87 | 87 | |
| 88 | -<p>This is the easiest method. A stand-alone server uses the <a | |
| 88 | +<p>This is the <a href="any/none.md">easiest method</a>. | |
| 89 | +A stand-alone server uses the <a | |
| 89 | 90 | href="/help?cmd=server"><tt>fossil server</tt></a> command to run a |
| 90 | 91 | process that listens for incoming HTTP requests on a socket and then |
| 91 | 92 | dispatches a copy of itself to deal with each incoming request. You can |
| 92 | 93 | expose Fossil directly to the clients in this way or you can interpose a |
| 93 | 94 | <a href="https://en.wikipedia.org/wiki/Reverse_proxy">reverse proxy</a> |
| @@ -112,27 +113,48 @@ | ||
| 112 | 113 | which have similar socket listener features. We do not yet have |
| 113 | 114 | tutorials showing how to configure these advanced daemons for Fossil, |
| 114 | 115 | but we welcome <a href="contribute.wiki">contributions</a>.</p> |
| 115 | 116 | |
| 116 | 117 | |
| 117 | -<h3>CGI and SCGI</h3> | |
| 118 | - | |
| 119 | -<p>Fossil can also be run using CGI from ordinary web servers such as | |
| 120 | -Apache, <a href="windows/cgi.md">IIS</a>, <tt>lighttpd</tt>, or | |
| 121 | -<tt>althttpd</tt>. The Fossil server administrator places a <a | |
| 122 | -href="/help?cmd=cgi">short CGI script</a> in the web server's document | |
| 123 | -hierarchy, and when a client requests the appropriate URL, that script | |
| 124 | -runs Fossil to generate the responce. CGI is a good choice for merging | |
| 125 | -Fossil into an existing web site. The Fossil <a | |
| 118 | +<h3>SCGI</h3> | |
| 119 | + | |
| 120 | +<p>The Fossil standalone server can also run <a href="any/scgi.md">in | |
| 121 | +SCGI mode</a> — <a href="/help/server"><tt>fossil server --scgi</tt></a> | |
| 122 | +— instead of <a href="any/none.md">HTTP mode</a>, which allows it to | |
| 123 | +respond to requests from web servers <a href="debian/nginx.md">such as | |
| 124 | +nginx</a> that don't support CGI. SCGI is a simpler protocol to proxy | |
| 125 | +than HTTP, since the HTTP doesn't have to be re-interpreted in terms of | |
| 126 | +the proxy's existing HTTP implementation, but it's more complex to set | |
| 127 | +up because you also have to set up an SCGI-to-HTTP proxy for it. It is | |
| 128 | +worth taking on this difficulty only when you need to integrate Fossil | |
| 129 | +into an existing web site already being served by an SCGI-capable web | |
| 130 | +server.</p> | |
| 131 | + | |
| 132 | + | |
| 133 | +<h3>CGI</h3> | |
| 134 | + | |
| 135 | +<p>Most ordinary web servers can <a href="any/cgi.md">run Fossil as a | |
| 136 | +CGI script</a>. This method is known to work with Apache, <a | |
| 137 | +href="windows/cgi.md">IIS</a>, <tt>lighttpd</tt>, and <a | |
| 138 | +href="any/althttpd.md"><tt>althttpd</tt></a>. The Fossil server | |
| 139 | +administrator places a <a href="/help?cmd=cgi">short CGI script</a> in | |
| 140 | +the web server's document hierarchy, and when a client requests the | |
| 141 | +appropriate URL, that script runs Fossil to generate the response.</p> | |
| 142 | + | |
| 143 | +<p>Back when CGI was first created, this method was quite simple, but | |
| 144 | +because of all of the security barriers put up around CGI in most web | |
| 145 | +servers, it can actually be one of the most complicated methods to set | |
| 146 | +up, feature-for-feature. Reverse proxying (both HTTP and SCGI) is the | |
| 147 | +only more complicated method for serving Fossil, but you do get a lot of | |
| 148 | +additional power when doing that.</p> | |
| 149 | + | |
| 150 | +<p>CGI is a good choice for merging Fossil into an existing web site, | |
| 151 | +particularly on hosts that have CGI set up for you already and won't let | |
| 152 | +you modify the web server configuration further. The Fossil <a | |
| 126 | 153 | href="../selfhost.wiki">self-hosting repositories</a> are implemented |
| 127 | 154 | with CGI underneath <tt>althttpd</tt>.</p> |
| 128 | 155 | |
| 129 | -<p>For web servers such as nginx that do not support CGI, Fossil | |
| 130 | -supports SCGI, a protocol that gives most of the simplicity of CGI with | |
| 131 | -the efficiency of the stand-alone server option. With nginx, you use the | |
| 132 | -<a href="/help/server"><tt>fossil server --scgi</tt></a> command.</p> | |
| 133 | - | |
| 134 | 156 | |
| 135 | 157 | |
| 136 | 158 | <h2 id="matrix">Setup Tutorials</h2> |
| 137 | 159 | |
| 138 | 160 | <p>We've broken the configuration for each method out into a series of |
| 139 | 161 |
| --- www/server/index.html | |
| +++ www/server/index.html | |
| @@ -83,11 +83,12 @@ | |
| 83 | administrator preferences.</p> |
| 84 | |
| 85 | |
| 86 | <h3>Stand-alone HTTP Server</h3> |
| 87 | |
| 88 | <p>This is the easiest method. A stand-alone server uses the <a |
| 89 | href="/help?cmd=server"><tt>fossil server</tt></a> command to run a |
| 90 | process that listens for incoming HTTP requests on a socket and then |
| 91 | dispatches a copy of itself to deal with each incoming request. You can |
| 92 | expose Fossil directly to the clients in this way or you can interpose a |
| 93 | <a href="https://en.wikipedia.org/wiki/Reverse_proxy">reverse proxy</a> |
| @@ -112,27 +113,48 @@ | |
| 112 | which have similar socket listener features. We do not yet have |
| 113 | tutorials showing how to configure these advanced daemons for Fossil, |
| 114 | but we welcome <a href="contribute.wiki">contributions</a>.</p> |
| 115 | |
| 116 | |
| 117 | <h3>CGI and SCGI</h3> |
| 118 | |
| 119 | <p>Fossil can also be run using CGI from ordinary web servers such as |
| 120 | Apache, <a href="windows/cgi.md">IIS</a>, <tt>lighttpd</tt>, or |
| 121 | <tt>althttpd</tt>. The Fossil server administrator places a <a |
| 122 | href="/help?cmd=cgi">short CGI script</a> in the web server's document |
| 123 | hierarchy, and when a client requests the appropriate URL, that script |
| 124 | runs Fossil to generate the responce. CGI is a good choice for merging |
| 125 | Fossil into an existing web site. The Fossil <a |
| 126 | href="../selfhost.wiki">self-hosting repositories</a> are implemented |
| 127 | with CGI underneath <tt>althttpd</tt>.</p> |
| 128 | |
| 129 | <p>For web servers such as nginx that do not support CGI, Fossil |
| 130 | supports SCGI, a protocol that gives most of the simplicity of CGI with |
| 131 | the efficiency of the stand-alone server option. With nginx, you use the |
| 132 | <a href="/help/server"><tt>fossil server --scgi</tt></a> command.</p> |
| 133 | |
| 134 | |
| 135 | |
| 136 | <h2 id="matrix">Setup Tutorials</h2> |
| 137 | |
| 138 | <p>We've broken the configuration for each method out into a series of |
| 139 |
| --- www/server/index.html | |
| +++ www/server/index.html | |
| @@ -83,11 +83,12 @@ | |
| 83 | administrator preferences.</p> |
| 84 | |
| 85 | |
| 86 | <h3>Stand-alone HTTP Server</h3> |
| 87 | |
| 88 | <p>This is the <a href="any/none.md">easiest method</a>. |
| 89 | A stand-alone server uses the <a |
| 90 | href="/help?cmd=server"><tt>fossil server</tt></a> command to run a |
| 91 | process that listens for incoming HTTP requests on a socket and then |
| 92 | dispatches a copy of itself to deal with each incoming request. You can |
| 93 | expose Fossil directly to the clients in this way or you can interpose a |
| 94 | <a href="https://en.wikipedia.org/wiki/Reverse_proxy">reverse proxy</a> |
| @@ -112,27 +113,48 @@ | |
| 113 | which have similar socket listener features. We do not yet have |
| 114 | tutorials showing how to configure these advanced daemons for Fossil, |
| 115 | but we welcome <a href="contribute.wiki">contributions</a>.</p> |
| 116 | |
| 117 | |
| 118 | <h3>SCGI</h3> |
| 119 | |
| 120 | <p>The Fossil standalone server can also run <a href="any/scgi.md">in |
| 121 | SCGI mode</a> — <a href="/help/server"><tt>fossil server --scgi</tt></a> |
| 122 | — instead of <a href="any/none.md">HTTP mode</a>, which allows it to |
| 123 | respond to requests from web servers <a href="debian/nginx.md">such as |
| 124 | nginx</a> that don't support CGI. SCGI is a simpler protocol to proxy |
| 125 | than HTTP, since the HTTP doesn't have to be re-interpreted in terms of |
| 126 | the proxy's existing HTTP implementation, but it's more complex to set |
| 127 | up because you also have to set up an SCGI-to-HTTP proxy for it. It is |
| 128 | worth taking on this difficulty only when you need to integrate Fossil |
| 129 | into an existing web site already being served by an SCGI-capable web |
| 130 | server.</p> |
| 131 | |
| 132 | |
| 133 | <h3>CGI</h3> |
| 134 | |
| 135 | <p>Most ordinary web servers can <a href="any/cgi.md">run Fossil as a |
| 136 | CGI script</a>. This method is known to work with Apache, <a |
| 137 | href="windows/cgi.md">IIS</a>, <tt>lighttpd</tt>, and <a |
| 138 | href="any/althttpd.md"><tt>althttpd</tt></a>. The Fossil server |
| 139 | administrator places a <a href="/help?cmd=cgi">short CGI script</a> in |
| 140 | the web server's document hierarchy, and when a client requests the |
| 141 | appropriate URL, that script runs Fossil to generate the response.</p> |
| 142 | |
| 143 | <p>Back when CGI was first created, this method was quite simple, but |
| 144 | because of all of the security barriers put up around CGI in most web |
| 145 | servers, it can actually be one of the most complicated methods to set |
| 146 | up, feature-for-feature. Reverse proxying (both HTTP and SCGI) is the |
| 147 | only more complicated method for serving Fossil, but you do get a lot of |
| 148 | additional power when doing that.</p> |
| 149 | |
| 150 | <p>CGI is a good choice for merging Fossil into an existing web site, |
| 151 | particularly on hosts that have CGI set up for you already and won't let |
| 152 | you modify the web server configuration further. The Fossil <a |
| 153 | href="../selfhost.wiki">self-hosting repositories</a> are implemented |
| 154 | with CGI underneath <tt>althttpd</tt>.</p> |
| 155 | |
| 156 | |
| 157 | |
| 158 | <h2 id="matrix">Setup Tutorials</h2> |
| 159 | |
| 160 | <p>We've broken the configuration for each method out into a series of |
| 161 |