WTF: имам работещо Apache. Пиша java web application и искам той да се търкаля на port 80 на един от VHost-овете му. В моя случай към Apache-то имам закачени 30-тина домейна с по няколко VHost-а за всеки от домейните (т.е. домейните са като VHosts, техните sub-домейни – също). За пример – http://adilov.net и http://blog.adilov.net. Read more…
Categories: How to, Софтуер Tags: apache, freebsd, howto, mod_jk, port, server, tomcat, webapps, xml, домейн, конфигурация, порт
Необходими ресурси:
Ще използвам C:\DEVELOP за директория, в която ще се намират всичките необходими компоненти. Там разархивираме Tomcat-а (C:\DEVELOP\apache-tomcat-6.0.18), както и PHP-архива (C:\DEVELOP\php-5.2.6-Win32). В системните променливи трябва да имаме няколко допълнителни – JAVA_HOME, ако все още не съществува, PHP_HOME и TOMCAT_HOME. Тези променливи трябва да сочат към главните съответни директории. В системния път (%PATH%) добавяме и %PHP_HOME%.
Отваряме %TOMCAT_HOME%\webapps, и създаваме директория test-php, а в нея – html-example.html (с най-просто съдържание), за да тестваме дали Tomcat работи. Стартираме Tomcat и отваряме http://localhost:8080/test-php/html-example.html. Ще изпреварим малко събитията и ще поготвим няколко други директории в test-php: WEB-INF, WEB-INF/lib. На нивото на html-example.html създаваме още една примерна страница, но този път за тестване на php: php-example.php със съдържание <?php phpinfo(); ?>
Отваряме %PHP_HOME%, копираме php.ini-dist в име php.ini и го отваряме за редакция. Разкоментираме реда с ;extension=php_java.dll, а ако той не съществува, добавяме само extension=php_java.dll (редовете, започващи с ; са коментари). От PECL-архива разархивираме php5servlet.dll и php_java.dll в %PHP_HOME%. Също от този архив взимаме phpsrvlt.jar и го оставяме в test-php/WEB-INF/lib. Отваряме jar-а (с jar или най-обикновен zip де/архиватор) и правим 2 промени в net/php/reflect.properties и net/php/servlet.properties: и в двата файла променяме реда library=php5srvlt на library=php5servlet (показват името на dll-файла, който ще се търси). Записваме ги и ги вкарваме обратно в .jar-архива (отново с jar или zip де/архиватор).
Отново се сръщаме в test-php/WEB-INF и в нея създаваме web.xml файл. Ето и неговото съдържание
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
| <web-app>
<display-name>test-php</display-name>
<welcome-file-list>
<welcome-file>index.html</welcome-file>
<welcome-file>index.htm</welcome-file>
<welcome-file>index.jsp</welcome-file>
<welcome-file>index.php</welcome-file>
</welcome-file-list>
<servlet>
<servlet-name>php</servlet-name>
<servlet-class>net.php.servlet</servlet-class>
</servlet>
<servlet>
<servlet-name>php-formatter</servlet-name>
<servlet-class>net.php.formatter</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>php</servlet-name>
<url-pattern>*.php</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>php-formatter</servlet-name>
<url-pattern>*.phps</url-pattern>
</servlet-mapping>
</web-app> |
Стартираме Tomcat, отваряме http://localhost:8080/test-php/php-example.php и при успешно изпълнение на горните стъпки трябва да видим PHP Info страницата.
ВАЖНО: тези .dll файлове с x64 архитектури на Windows не са съвместими!
Последни коментари