Project

General

Profile

Actions

Mod redirect » History » Revision 10

« Previous | Revision 10/36 (diff) | Next »
alexlehm, 2007-02-26 21:35
fixed last example


{{{
#!rst ===============
URL Redirection ===============

--------------------
Module: mod_redirect
--------------------

.. meta::
:keywords: lighttpd, redirect

.. contents:: Table of Contents

Description ===========

The redirect module is used to specify redirects for a set of URLs.

Options =======

url.redirect
redirects a set of URLs externally

e.g. ::
url.redirect = ( "^/show/([0-9]+)/([0-9]+)$" => "http://www.example.org/show.php?isdn=$1&page$2",
"^/get/([0-9]+)/([0-9]+)$" => "http://www.example.org/get.php?isdn=$1&page$2" )
  1. make an external redirect
  2. from any www.host (with www.) to the host (without www.)
    $HTTP["host"] =~ "^www\.(.*)$" {
    url.redirect = ( "^/(.*)" => "http://%1/$1" )
    }

Some people love the www part in the url. A general solution to move all non www. hosts to its www equivalent: ::

$HTTP["host"] =~ "^([^.]+\.[^.]+)$" {
url.redirect = (
".*" => "http://www.%1$0"
)
}

Moving any subdomains except a few to www.example.org: (Note: The second match is required since a non-match doesn't set any groups) ::

$HTTP["host"] !~ "^(www|mail|mysql)\.(example\.org)$" {
$HTTP["host"] =~ "^([^.]+)\.(example\.org)$" {
url.redirect = (
"^/(.*)" => "http://www.%2/$1"
)
}
}

}}}

Updated by alexlehm almost 18 years ago · 10 revisions