Project

General

Profile

Actions

Mod redirect » History » Revision 16

« Previous | Revision 16/36 (diff) | Next »
Seldaek, 2008-03-27 01:16


TracNav(DocsToc) {{{
#!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" )
    }

url.redirect-code (Added in 1.5.0)
defines the http code that is sent with the redirect URL

e.g. ::
url.redirect-code = 302

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"
)
}

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 Seldaek over 16 years ago · 16 revisions