Как мне настроить Apache для пересылки некоторых URL-адресов в мой контейнер сервлетов независимо от того, существует ли файл
Вопрос
Как мне настроить Apache для пересылки URLA определенного расширения, скажем *.htm, в мой контейнер сервлета, в данном случае Resin, без предварительной проверки существования файла.
В настоящее время, если Apache не может найти запрошенный файл в структуре каталогов, он обслуживает 404, даже несмотря на то, что мое отображение сервлета web.xml обработало бы запрос, если бы он был перенаправлен.
Я временно прибегнул к размещению пустого файла, соответствующего запрошенному файлу, в моей веб-структуре (т.е.c:/dir/dir/index.htm ) так что Apache пересылает запрос.
Конфигурация Apache в Resin немного отличается от конфигурации Tomcat (ниже), однако проблема, похоже, существует исключительно в Apache, поскольку запрос никогда не попадает в Resin.
Мы были бы очень признательны за помощь.
LoadModule caucho_module c:/resin-pro/win32/apache-2.0/mod_caucho.dll
NameVirtualHost *
<VirtualHost *>
ServerName sub.domain.com
DocumentRoot c:/web
ResinConfigServer sub.domain.com 6802
</VirtualHost>
Решение
Вам нужно прочитать Как плагины отправляются в Resin и явно настройте URL-адреса, которые вы хотите, чтобы Resin обрабатывал для пересылки в Resin:
mod_caucho обнаруживает свою конфигурацию, связавшись с ResinConfigServer, указанным в httpd.conf или resin.ini.ResinConfigServer может быть любым сервером Resin.Когда пользователь запрашивает URL-адрес, mod_caucho использует конфигурацию, которую он определил с помощью ResinConfigServer, чтобы определить, должны ли Resin или Apache обрабатывать запрос.Это решение основано на конфигурации в resinconfigserver'е resin.conf.
Это означает, что если вы хотите, чтобы определенные URL-адреса обрабатывались Resin, вам необходимо настроить его таким образом в вашем resin.conf
.