It is because you added route which matches rent/:region/:town/:district/
and the two other condtions does not match this rule. You need create routes for
rent/:region/
rent/:town/
etc. You could do it but there is problem how to know that param is either town or region but it can be checked by adding regions and towns to database and looking for them or by adding some additional param and using regex.