2010-05-31 3 views
1
<routes> 
    <www type="Zend_Controller_Router_Route_Hostname"> 
     <route>www.domain.com</route> 
     <chains> 
      <index type="Zend_Controller_Router_Route"> 
       <route></route> 
       <defaults module="default" controller="index" action="index" /> 
      </index> 
      <community> 
       <route>community</route> 
       <defaults module="community" /> 
       <chains> 
        <index type="Zend_Controller_Router_Route"> 
         <route>:action/*</route> 
         <defaults controller="index" action="index" /> 
        </index> 
        <member type="Zend_Controller_Router_Route_Regex"> 
         <route>member/profile-(\d+)-(.+)</route> 
         <reverse>member/profile-%d-%s</reverse> 
         <map> 
          <id>1</id> 
          <nom>2</nom> 
         </map> 
         <defaults action="viewmember" /> 
        </member> 
       </chains> 
      </community> 
     </chains> 
    </www> 

Как вы можете видеть, я использую маршрут с: действием/*, чтобы покрыть домашние страницы и действия с основами указателя.По умолчанию маршрут сопоставляется вместо определенного маршрута

domain.com/community/random_action => работает хорошо.

domain.com/community/ не работает. Отобразится вся домашняя страница. Я проверил, и маршрут по умолчанию сопоставлен.

Я попытался собрать() на маршруте «WWW-сообщества индекса», и это дает также www.domain.com/community

Я не вижу, откуда возникает проблема :(

ответ

0

Первое, что вы должны проверить, - это удалить маршрут по умолчанию. Второй - .... помните, что маршруты проверяются в обратном порядке. Это означает, что наиболее конкретным должен быть первый и по умолчанию последний.

Смежные вопросы