Maison > Article > développement back-end > Comment faire en sorte que Tomcat prenne en charge PHP en cours d'exécution
Les développeurs Java savent tous que Tomcat est utilisé pour déployer des projets Web Java. Il est nécessaire d'utiliser le même nom de domaine et le même port que le projet PHP. Comment y parvenir sans utiliser nginx ? J'ai appris que grâce à Java Bridge, Tomcat peut prendre en charge l'exécution de PHP. Voici les étapes détaillées.
1.Préparation de l'environnement
Installer l'environnement php , installez la machine virtuelle java, tomcat
La configuration minimale de ces outils est php 5.x, java 6 ou supérieur, tomcat 6 ou supérieur.
2. Configurez Tomcat
Placez le JavaBridge.jar de PHP/Java Bridge. , Copiez php-servlet.jar et php-script.jar dans le répertoire lib de Tomcat
Modifiez le fichier web.xml dans le dossier conf du répertoire d'installation de Tomcat et ajoutez le code suivant au site Web. -app tag ;
<listener> <listener-class>php.java.servlet.ContextLoaderListener</listener-class> </listener> <servlet> <servlet-name>PhpJavaServlet</servlet-name> <servlet-class>php.java.servlet.PhpJavaServlet</servlet-class> </servlet> <servlet> <servlet-name>PhpCGIServlet</servlet-name> <servlet-class>php.java.servlet.fastcgi.FastCGIServlet</servlet-class> <init-param> <param-name>prefer_system_php_exec</param-name> <param-value>On</param-value> </init-param> <init-param> <param-name>php_include_java</param-name> <param-value>Off</param-value> </init-param> </servlet> <servlet-mapping> <servlet-name>PhpJavaServlet</servlet-name> <url-pattern>*.phpjavabridge</url-pattern> </servlet-mapping> <servlet-mapping> <servlet-name>PhpCGIServlet</servlet-name> <url-pattern>*.php</url-pattern> </servlet-mapping>
Après avoir terminé les étapes ci-dessus, redémarrez Tomcat et vous pourrez exécuter le script php sous n'importe quel projet, mais il ne peut pas être exécuté directement sous webapps/, car le site officiel de Tomcat l'explique cgiPathPrefix comme suit :
Le chemin de recherche CGI commencera au répertoire racine de l'application Web + File.separator + ce préfixe
Directement dans le répertoire webapps Lors de l'accès au fichier index.php
<?php phpinfo();?>apparaît lors de l'accès à
Partage de vidéos d'apprentissage associées :
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!