Как настроить Apache для пересылки некоторых URL-адресов в мой контейнер сервлета независимо от того, существует ли файл - PullRequest
2 голосов
/ 27 мая 2009

Как настроить Apache для пересылки URL-адреса определенного расширения, скажем * .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>

1 Ответ

2 голосов
/ 27 мая 2009

Вам нужно прочитать Как плагины рассылаются на Resin и явно настроить URL-адреса, которые вы хотите обрабатывать с помощью Resin, для пересылки на Resin:

mod_caucho обнаруживает свою конфигурацию, связываясь с указанным ResinConfigServer в httpd.conf или смолы.ини. ResinConfigServer может быть любым сервером Resin. Когда пользователь запрашивает URL, mod_caucho использует конфигурацию, определенную им из ResinConfigServer, чтобы определить, должен ли Resin или Apache обрабатывать запрос. Это решение основано на конфигурации в смоле ResinConfigServer в смолы.conf.

Это означает, что если вы хотите, чтобы Resin обрабатывал определенные URL-адреса, вам необходимо настроить его следующим образом: resin.conf.

...