72 lines
1.6 KiB
Plaintext
72 lines
1.6 KiB
Plaintext
============
|
|
URL Rewrites
|
|
============
|
|
|
|
-------------------
|
|
Module: mod_rewrite
|
|
-------------------
|
|
|
|
:Author: Jan Kneschke
|
|
:Date: $Date: 2004/11/03 22:26:05 $
|
|
:Revision: $Revision: 1.2 $
|
|
|
|
:abstract:
|
|
url rewrite
|
|
|
|
.. meta::
|
|
:keywords: lighttpd, rewrite
|
|
|
|
.. contents:: Table of Contents
|
|
|
|
Description
|
|
===========
|
|
|
|
internal redirects, url rewrite
|
|
|
|
Options
|
|
=======
|
|
|
|
url.rewrite-once
|
|
rewrites a set of URLs interally in the webserver BEFORE they are handled.
|
|
|
|
e.g. ::
|
|
|
|
url.rewrite-once = ( "<regex>" => "<relative-uri>" )
|
|
|
|
url.rewrite-repeat
|
|
rewrites a set of URLs interally in the webserver BEFORE they are handled
|
|
|
|
e.g. ::
|
|
|
|
url.rewrite-repeat = ( "<regex>" => "<relative-uri>" )
|
|
|
|
The options ``url.rewrite`` and ``url.rewrite-final`` were mapped to ``url.rewrite-once``
|
|
in 1.3.16.
|
|
|
|
Examples
|
|
========
|
|
|
|
The regex is matching the full REQUEST_URI which is supplied by the user including
|
|
query-string.::
|
|
|
|
url.rewrite-once = ( "^/id/([0-9]+)$" => "/index.php?id=$1",
|
|
"^/link/([a-zA-Z]+)" => "/index.php?link=$1" )
|
|
|
|
|
|
|
|
# the following example, is, however just simulating vhost by rewrite
|
|
# * you can never change document-root by mod_rewrite
|
|
# use mod_*host instead to make real mass-vhost
|
|
|
|
# request: http://any.domain.com/url/
|
|
# before rewrite: REQUEST_URI="/www/htdocs/url/"
|
|
# and DOCUMENT_ROOT="/www/htdocs/" %0="www.domain.com" $1="url/"
|
|
# after rewrite: REQUEST_URI="/www/htdocs/domain.com/url/"
|
|
# still, you have DOCUMENT_ROOT=/www/htdocs/
|
|
|
|
server.document-root = "/www/htdocs/"
|
|
$HTTP["host"] =~ "^.*\.([^.]+\.com)$" {
|
|
url.rewrite-once = ( "^/(.*)" => "/%0/$1" )
|
|
}
|
|
|