Spring SimpleUrlHandlerMapping к robots.txt - PullRequest
       4

Spring SimpleUrlHandlerMapping к robots.txt

0 голосов
/ 01 октября 2010

Я использую Spring Framework, следующее - отображение URL на контроллер

<bean id="urlMapping" class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
<property name="mappings">
<props>
<prop key="/controller.web">webController</prop>
<prop key="/robots.txt">robotsController</prop>
</props>
</property>
</bean>

Когда я нажимаю элемент управления controller.web попадает в веб-контроллер, но когда я нажимаю элемент управления robots.txt, не переносите его в robotsController, вместо этого он пытается найти ресурс robots.txt, если я удаляю robots.txt из контекста dir ресурс не найден.

если я заменил robots.txt на robots.web, он работает нормально, значит, есть что-то подозрительное с именем robots.txt, есть идеи?

1 Ответ

2 голосов
/ 01 октября 2010

Полагаю, ваш DispatcherServlet отображается как <url-pattern>*.web</url-pattern>, поэтому он обрабатывает только запросы к *.web.

Если вы хотите, чтобы DispatcherServlet обрабатывал запрос с различными расширениями, у вас есть несколько вариантов:

  • Добавить несколько url-pattern s к <servlet-mapping>:

    <url-pattern>*.web</url-pattern>
    <url-pattern>*.txt</url-pattern>
    
  • Обрабатывать все запросы с помощью DispatcherServlet, сопоставленным как <url-pattern>/</url-pattern>Обратите внимание, что этот подход требует определенных усилий для обслуживания статического контента, см. здесь .

...