Simple config based 301/302 redirects for express
npm install express-seo-redirectsSimple config based 301/302 redirects for express.
``bash`
npm install express-seo-redirects --save
Add the middleware to your express application before all other routes.
`js
var express = require('express');
var app = express();
var redirects = require('express-seo-redirects');
// add middleware with relative path to redirect.json file
app.use(redirects('./redirects.json'));
// standard express route
app.get('/', function(req, res) {
res.send('Hello world!');
});
`
Create a redirects.json file in the root of your project, with a list of redirects:
`json`
[
{ "status": 301, "from": "/mobile-barcode-scanner", "to": "/docs/getting-started/mobile" },
{ "status": 301, "from": "/mobile-data-capture-platform", "to": "/" },
{ "status": 301, "from": "/plans", "to": "/pricing" },
{ "status": 301, "from": "/plans-new", "to": "/pricing" }
]
Each redirect can have 3 parameters:
Property | Type | Required | Description
-------- |:------- |:------------------:|:------------------------------------------
from | string | :heavy_check_mark: | Relative URL of incoming requestto | string | :heavy_check_mark: | Destination URLstatus | integer | | HTTP response code _(302 if not provided)_
QueryStrings are ignored by default, to match on path and query string pass app.use(redirects('./redirects.json', true)); as the second param to enable strict mode.
Feel free to contribute, either by raising an issue or:
1. Fork it!
2. Create your feature branch: git checkout -b my-new-featuregit commit -m 'Add some feature'
3. Commit your changes: git push origin my-new-feature`
4. Push to the branch:
5. Submit a pull request
For change-log, check releases.
Licensed under MIT License © John Doherty