Подключил Python как CGI в Tomcat'e как написано в документации: удалил комментирование с блоков подключения CGIServlet-а и маппинга сервлета, а также переименовал servlets-cgi.renametojar в servlets-cgi.jar. Перезапустил веб-сервер, теперь все файлы находящиеся в папке cgi обрабатываются через python. Все было бы хорошо, но столкнулся с проблемой - при открытии сокетов вываливалась ошибка:
Error 2004: Can't create TCP/IP socket (10106)
Решается проблема прописыванием недокументированного параметра (passShellEnvironment) в конфигурацию web.xml. В результате должно быть так:
П.С.: Tomcat версии 4, Python версии 2.7.<servlet>
<servlet-name>cgi</servlet-name>
<servlet-class>org.apache.catalina.servlets.CGIServlet</servlet-class>
<init-param>
<param-name>clientInputTimeout</param-name>
<param-value>100</param-value>
</init-param>
<init-param>
<param-name>executable</param-name>
<param-value>c:/python27/python.exe</param-value>
</init-param>
<init-param>
<param-name>debug</param-name>
<param-value>6</param-value>
</init-param>
<init-param>
<param-name>cgiPathPrefix</param-name>
<param-value>WEB-INF/cgi</param-value>
</init-param>
<init-param>
<param-name>passShellEnvironment</param-name>
<param-value>true</param-value>
</init-param>
<load-on-startup>5</load-on-startup>
</servlet>
Комментариев нет:
Отправить комментарий