forked from svrjs/svrjs
Fixed bug with URL rewriting and trailing slash redirection
This commit is contained in:
parent
33d89f01d3
commit
ab69abf2da
1 changed files with 3 additions and 3 deletions
6
svr.js
6
svr.js
|
@ -4316,11 +4316,11 @@ if (!cluster.isPrimary) {
|
||||||
|
|
||||||
// Trailing slash redirection
|
// Trailing slash redirection
|
||||||
function redirectTrailingSlashes(callback) {
|
function redirectTrailingSlashes(callback) {
|
||||||
if (!disableTrailingSlashRedirects && href[href.length - 1] != "/") {
|
if (!disableTrailingSlashRedirects && href[href.length - 1] != "/" && origHref[origHref.length - 1] != "/") {
|
||||||
fs.stat("." + decodeURIComponent(href), function (err, stats) {
|
fs.stat("." + decodeURIComponent(href), function (err, stats) {
|
||||||
if (err || !stats.isDirectory()) {
|
if (err || !stats.isDirectory()) {
|
||||||
try {
|
try {
|
||||||
callback();
|
callback();
|
||||||
} catch (err) {
|
} catch (err) {
|
||||||
callServerError(500, undefined, err);
|
callServerError(500, undefined, err);
|
||||||
}
|
}
|
||||||
|
@ -4328,7 +4328,7 @@ if (!cluster.isPrimary) {
|
||||||
var destinationURL = uobject;
|
var destinationURL = uobject;
|
||||||
destinationURL.path = null;
|
destinationURL.path = null;
|
||||||
destinationURL.href = null;
|
destinationURL.href = null;
|
||||||
destinationURL.pathname += "/";
|
destinationURL.pathname = origHref + "/";
|
||||||
destinationURL.hostname = null;
|
destinationURL.hostname = null;
|
||||||
destinationURL.host = null;
|
destinationURL.host = null;
|
||||||
destinationURL.port = null;
|
destinationURL.port = null;
|
||||||
|
|
Reference in a new issue