Dir1 и Dir2 не константы, они передаются через запрос. Из примера Dir1 = foo, Dir2 = bar. И разделитель в directory _ , т.е. должно получиться directory = foo_bar
Может я неправильно понял задачу, но можно попробовать такой вариант (будет соответствовать УРЛу '/dir1/dir2/foo/bar/1'). Соответственно контроллер должен быть: Controller_Dir1_Dir2_Foo