我需要修改我的.htaccess才能执行下一次重定向:
http://www.example.com/en/region1/subregion1/subregion2
到
http://www.example.com/en/example.php?param1=region1¶m2=subregion1¶m3=subregion2
问题在于我原来的网址可以有3种不同的结构:
/ REGION1 /
/ REGION1 / subregion1 /
/ REGION1 / subregion1 / subregion2
我想要的是将这些子目录转换为变量,无论它们是3还是仅1。
如何使用mod_rewrite实现此目的?
谢谢
答案 0 :(得分:1)
以此为基础:
TableA tabA = null;
TableB tabB = null;
var s = Session.QueryOver<TableA>(() => tabA)
.JoinAlias(() => tabB.TableBItems, () => tabB, JoinType.InnerJoin)
.Where(Restrictions.Conjunction()
.Add(() => tabA.SomeID == 123)
.Add(() => tabA.SomeNullableDate != null)
)
.Where(Restrictions.Not(
Restrictions.Conjunction()
.Add(() => tabB.X == null)
.Add(() => tabB.Y == null)
))
.List<TableA>();
只有一个参数的网址将定位到
RewriteEngine on
RewriteRule ^en/(([^/]+)/)(([^/]+)/)?(([^/]+)/)?$ example.php?param1=$2¶m2=$4¶m3=$6
因此,不存在的参数将为空。