src/main/scala/s3/website/model/push.scala in s3_website-2.1.5 vs src/main/scala/s3/website/model/push.scala in s3_website-2.1.6

- old
+ new

@@ -153,11 +153,20 @@ object Redirect { def resolveRedirects(implicit config: Config): Seq[Redirect] = config.redirects.fold(Nil: Seq[Redirect]) { sourcesToTargets => sourcesToTargets.foldLeft(Seq(): Seq[Redirect]) { (redirects, sourceToTarget) => - redirects :+ Redirect(sourceToTarget._1, sourceToTarget._2) + redirects :+ Redirect(sourceToTarget._1, applySlashIfNeeded(sourceToTarget._2)) } + } + + private def applySlashIfNeeded(redirectTarget: String) = { + val isExternalRedirect = redirectTarget.matches("https?:\\/\\/.*") + val isInSiteRedirect = redirectTarget.startsWith("/") + if (isInSiteRedirect || isExternalRedirect) + redirectTarget + else + "/" + redirectTarget // let the user have redirect settings like "index.php: index.html" in s3_website.ml } } case class S3File(s3Key: String, md5: MD5)