RESOLUTION
Tomcat applications are accessible on port 9080 of a domain: http://domain.com:9080/app-nameTo get them accessible at regular port: http://domain.com/app-name the Tomcat ISAPI redirecting filter is used. So the “404 Not Found” error when accessing an application at http://domain.com/app-name indicates a problem with this filter. Here’s what one can do to determine the reason of the problem:1. Open IIS management console.
2. Navigate to Web Sites properties > ISAPI filters tab.
3. Jakarta ISAPI filter should be added there with a “Loaded” status
If there is no such filter then it should be added. To do it - click on Add button and choose "%plesk_dir%\isapi\isapi_redirect.dll". Set filter name, e.g. "jakarta" and сlick OK.
4. Jakarta ISAPI filter should be allowed as Web service extension, it can be checked here: IIS, Web Service Extensions, Tomcat Redirector
If there is no such filter it should be added. To add it - right click on IIS Web Service Extensions > Add new Web Service Extension, choose "%plesk_dir%\isapi\isapi_redirect.dll". Set Extension name, e.g. "Tomcat Redirector" click OK.
5. Worker files for Jakarta ISAPI filter should be available:
"%plesk_dir%\isapi\uriworkermap.properties"
"%plesk_dir%\isapi\workers.properties"
If there are no such files they should be created. Default uriworkermap.properties and workers.properties files are attached to this article. Then Tomcat services need to be re-enables on the domains where applications are installed to update the worker files.
6. Registry records for Tomcat redirector should be set up correctly:
[HKEY_LOCAL_MACHINE\SOFTWARE\Apache Software Foundation\Jakarta Isapi Redirector\1.0]
Default structure:
extension_uri = /jakarta/isapi_redirect.dll
log_level = emerg
log_file = C:\Program Files\SWsoft\Plesk\Additional\Tomcat\LogFiles\jakarta.log
worker_file = C:\Program Files\SWsoft\Plesk\isapi\workers.properties
worker_mount_file = C:\Program Files\SWsoft\Plesk\isapi\uriworkermap.properties 7. All domain names in the following file should resolve to correct IP addresses in DNS: "%plesk_dir%\isapi\workers.properties"
If there is at least one domain that can’t be resolved to an IP in DNS ISAPI filter will not work. Therefore, none of Tomcat applications on the server would be accessible. So, if some unresolved domains are present in that file Tomcat service needs to be disabled for these domains using the control panel. Another solution in this case is to use localhost as a primary DNS server. Therefore, all domains will be resolved.
ATTACHED FILES:
| uriworkermap.properties |
| workers.properties |