File:  [ELWIX - Embedded LightWeight unIX -] / embedaddon / lighttpd / doc / outdated / rewrite.txt
Revision 1.1.1.1 (vendor branch): download - view: text, annotated - select for diffs - revision graph
Mon Oct 14 10:32:48 2013 UTC (10 years, 8 months ago) by misho
Branches: lighttpd, MAIN
CVS tags: v1_4_41p8, v1_4_35p0, v1_4_35, v1_4_33, HEAD
1.4.33

============
URL Rewrites
============

-------------------
Module: mod_rewrite
-------------------

:Author: Jan Kneschke
:Date: $Date: 2013/10/14 10:32:48 $
:Revision: $Revision: 1.1.1.1 $

: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.

Warning
=======

Do NOT use mod_rewrite to protect specific urls, as the original url passed from the client
is matched against your rules, for example strings like "/abc/../xyz%2f/path".

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


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>