Skip to content

Docs shouldn't recommend mod_rewrite for Apache #127

@LiberalArtist

Description

@LiberalArtist

The documentation on using Apache with the Racket Web Server currently recommends mod_rewrite:

@section{How do I use Apache with the Racket Web Server?}
You may want to put Apache in front of your Racket Web Server
application. Apache can rewrite and proxy requests for a private (or
public) Racket Web Server:
@verbatim{
RewriteEngine on
RewriteRule ^(.*)$ http://localhost:8080/$1 [P,NE]
}
The first argument to @exec{RewriteRule} is a match pattern. The second
is how to rewrite the URL. The bracketed part contains flags that
specify the type of rewrite, in this case the @litchar{P} flag instructs
Apache to proxy the request. (If you do not include this, Apache will
return an HTTP Redirect response and the client will make a second
request to @litchar{localhost:8080} which will not work on a different
machine.) In addition, the @litchar{NE} flag is needed to avoid
escaping parts of the URL --- without it, a @litchar{;} is escaped as
@litchar{%3B} which will break the proxied request.
See Apache's documentation for more details on
@link["http://httpd.apache.org/docs/current/mod/mod_rewrite.html#rewriterule"]{RewriteRule}.

However, the extended documentation for mod_rewrite lists Simple Proxying as an example of when not to use mod_rewrite: it recommends ProxyPass from mod_proxy.

I was reminded of this while writing #126 (comment). I'm not sure if I have a working example to contribute at the moment (I'm in the midst of some configuration changes locally), but I'll send one if I do.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions