HowToRedirectHttpToHttps » History » Revision 4
« Previous |
Revision 4/33
(diff)
| Next »
Anonymous, 2007-02-04 12:49
= How to redirect HTTP requests to HTTPS =
As of version 1.4.11 this is as simple as:
{{{
$SERVER["socket"] == ":80" {
$HTTP["host"] =~ "example.org" {
url.redirect = ( "^/(.*)" => "https://example.org/$1" )
server.name = "example.org"
}
}
$SERVER["socket"] == ":443" {
ssl.engine = "enable"
ssl.pemfile = "/path/to/example.org.pem"
server.document-root = "..."
}
}}}
(Note: this also works in versions prior to 1.4.11 providing you have not specified {{{server.port = 80}}} in your configuration file.)
To redirect ''all'' hosts to their secure equivalents use the following in place of the socket 80 configuration above:
{{{
$SERVER["socket"] == ":80" {
$HTTP["host"] =~ "(.*)" {
url.redirect = ( "^/(.*)" => "https://%1/$1" )
}
}
}}}
----
The information was taken from two postings to the mailing list by Jan:
WARNING: unknown config-key: url.redirect (ignored)
- http://article.gmane.org/gmane.comp.web.lighttpd/3575
- http://article.gmane.org/gmane.comp.web.lighttpd/3580
If you see this error
{{{
WARNING: unknown config-key: url.redirect (ignored)
}}}
Then you need to add mod_redirect under server.modules in your lighttpd conf file:
{{{
server.modules = (
"mod_rewrite",
"mod_redirect",
"mod_alias",
"mod_access",
...
)
}}}
Comments:
It didn't work for me 1.4.13
Starting lighttpd: 2007-02-04 12:48:00: (network.c.300) can't bind to port: 80 Address already in use
Both with server.port = 80 and with tha commented
Does server.bind has influence?
Updated by Anonymous almost 18 years ago · 4 revisions