This module makes it possible to redirect (rewrite internally or redirect using HTTP codes) User to the specific URL based on RegExp Rules. The designated successor of grunt-connect-rewrite.
Getting Started
-
Install the middleware by running:
npm install http-rewrite-middleware --save -
Include the module:
var rewriteModule = ; -
Define your rules like:
var rewriteMiddleware = rewriteModule; -
See examples of integration with Connect / Express / Grunt bellow.
Options
Rule's format:
{from: '__from__', to: '__to__'[, redirect: 'permanent'|'temporary']}
Where:
__from__
- RegExp string to match.__to__
- String that replaces matched URL.redirect
- Optional parameter:- When it is omitted then the Rule will be dispatched as an internal rewrite (aka proxified).
- If the value is set then Browser will receive HTTP
Location
Header with value of parsed__to__
(permanent
value will giveHTTP 301
, any other value will giveHTTP 302
).
Example of usage with Connect
var connect = http = rewriteModule = ; var app =
Example of usage with Express
var express = app = rewriteModule = ; app
grunt-contrib-connect)
Example of usage with Grunt (var rewriteModule = ; grunt;
Debugging
In order to debug Rules just add 2nd parameter to the getMiddleware(...)
call
as getMiddleware(..., {verbose: true})
this will enable logging of matched rules.
The message will explain which __from__
rule was matched and what was the result of the rewrite.
Contributing
In lieu of a formal styleguide, take care to maintain the existing coding style. Add unit tests for any new or changed functionality. Lint and test your code.
Release History
- 2014.02.13
v0.1.6
Improve logging format - 2014.02.13
v0.1.5
Fix NPM... - 2014.01.29
v0.1.3
Add logging support - 2013.12.17
v0.1.1
Initial Release