对不起,我知道这个问题已被问了一百万次,但我无法让它发挥作用。我得到无限循环,或者它根本就没有重定向。
我希望以下内容重定向:
https://www.example.com
https://www.example.com/a/
https://www.example.com/b/
https://www.example.com/c/
到
https://www.example.com/shop/
https://www.example.com/shop/a/
https://www.example.com/shop/b/
https://www.example.com/shop/c/
到目前为止,我有:
Options +FollowSymLinks -MultiViews
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^$ /shop/$1 [L,QSA,NC]
我尝试了一百万个选项,谁可以提供帮助?
我也尝试过:
RewriteCond %{REQUEST_URI} !^/shop/
RewriteRule ^(.*)$ /shop/$1
答案 0 :(得分:0)
您可以使用以下一个班轮重定向:
class MapIncluding[K](ks: K*) {
def unapplySeq[V](m: Map[K, V]): Option[Seq[V]] = if (ks.forall(m.contains)) Some(ks.map(m)) else None
}
val MapIncludingABC = new MapIncluding("a", "b", "c")
val MapIncludingAAndB = new MapIncluding("a", "b")
Map("a" -> 1, "b" -> 2) match {
case MapIncludingABC(a, b, c) => println("Should not happen")
case MapIncludingAAndB(1, b) => println(s"Value of b inside map is $b")
}
这会将所有请求重定向到 / shop / ,包括您的主页。
注意:这不会重写输入网址,这只是将新网址重定向到旧网址,更改浏览器地址栏中输入的网址。