juntos - apache tomcat php
Ejecutar una aplicaciĆ³n de php con Tomcat? (7)
Caucho Quercus puede ejecutar código PHP en el jvm.
¿Es posible ejecutar una aplicación PHP usando Tomcat?
Antes de decirme que solo use httpd, ya tengo una aplicación Java ejecutándose en mi servidor web en host/myapp
. Ahora quiero instalar RoundCube en host / roundcube.
Uno es PHP y el otro es Java. Sigo viendo referencias espontáneas diciendo que esto es posible pero no hay instrucciones reales. No quiero ponerlos en puertos separados, necesito los puertos HTTP y HTTPS estándar.
¿Alguien tiene recursos para esto?
Es bastante común ejecutar Tomcat detrás de Apache. En Apache, puede dirigir ciertas URL a Tomcat y que Apache / PHP manejen las demás (incluidas las imágenes estáticas).
(En Unix, Tomcat no puede ejecutarse de manera segura en el puerto 80, mientras que Apache puede hacerlo. Tomcat, al ser un proceso de Java, debería ejecutarse como raíz, mientras que Apache cambiará a privilegios que no sean raíz tan pronto como se haya procesado el puerto 80 Así que ejecutar Apache en el puerto 80 y hacer que redirija algunas o todas las solicitudes a Tomcat es bastante común en Unix.
Existe este puente PHP/Java . Esto es básicamente ejecutar PHP a través de FastCGI. No lo he usado yo mismo.
Sí, es posible Will Den . podemos ejecutar código PHP en el servidor tomcat usando su propio número de puerto localhost: 8080
aquí estoy escribiendo un paso que es muy útil para ti.
Cómo instalar o ejecutar PHP en Tomcat 6 en Windows
Descargue y descomprima PHP 5 en un directorio,
c:/php-5.2.6-Win32
- php-5.2.9-2-Win32.zip Descargardescargar PECL 5.2.5 Binarios Win32 - PECL 5.2.5 Win32 Descargar
cambie el nombre de
php.ini-dist
aphp.ini
enc:/php-5.2.6-Win32
Descomente o agregue la línea (elimine el punto y coma al principio) en
php.ini
;extension=php_java.dll
Copie
php5servlet.dll
de PECL 5.2.5 ac:/php-5.2.6-Win32
Copie
php_java.dll
de PECL 5.2.5 ac:/php-5.2.6-Win32/ext
copie
php_java.jar
de PECL 5.2.5 atomcat/lib
crea un directorio llamado
"php"
(o comotomcat/webapps
) en el directoriotomcat/webapps
copie
phpsrvlt.jar
de PECL 5.2.5 atomcat/webapps/php/WEB-INF/lib
Desbloquee o descomprima
phpsrvlt.jar
para descomprimir use winrar o winzip para uso unjar:jar xfv phpsrvlt.jar
cambie ambos
net/php/reflect.properties
ynet/php/servlet.properties
alibrary=php5servlet
Vuelva a crear el archivo jar -> jar cvf php5srvlt.jar net / php / . PD: si el archivo jar no se ejecuta, tienes que agregar la ruta de acceso a las variables del sistema
C:/Program Files/Java/jdk1.6.0/bin; to System variables/Path
C:/Program Files/Java/jdk1.6.0/bin; to System variables/Path
crea
web.xml
entomcat/webapps/php/WEB-INF
con este contenido:<web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance " xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd "> <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>
Agregue la ruta de PHP (
c:/php-5.2.6-Win32
) a su Sistema o Ruta del usuario en el entorno de Windows (Sugerencia: haga clic con el botón derecho y seleccione Propiedades en Mi PCcrear
test.php
para probar bajotomcat/webapps/php
comoReiniciar tomcat
navegue
localhost:8080/php/test.php
Un poco tarde, pero aquí va.
Qué tal http://wiki.apache.org/tomcat/UsingPhp si solo quieres ejecutar php real en tomcat.
En cuanto a ejecutar tomcat en el puerto 80, siempre hay jsvc, solo google jsvc + tomcat.
tomcat está diseñado como contenedor de servlets JSP. Apache está diseñado como servidor web PHP. Use apache como servidor web, responda por la solicitud de PHP y dirija la solicitud de servlet JSP al contenedor de tomcat. debería ser una mejor implementación.