首頁 >後端開發 >PHP問題 >tomcat不支援php怎麼辦

tomcat不支援php怎麼辦

藏色散人
藏色散人原創
2020-08-19 10:26:372596瀏覽

tomcat不支援php的解決方法:先將“PHP/Java Bridge”下的相關檔案複製到tomcat的lib目錄下;然後修改tomcat安裝目錄下conf資料夾裡的“web.xml”文件;最後重啟tomcat即可。

tomcat不支援php怎麼辦

推薦:《PHP影片教學

java開發者都知道,tomcat是用來部署java web專案的。這段時間有個項目要求與PHP項目使用相同域名、相同端口,在不使用nginx的情況下如何實現?得知透過Java Bridge 可以實現tomcat支援運行php運行。  咱也來試試看。  有下面是詳細步驟。

1.環境準備

#    安裝了php環境、安裝java虛擬機器、tomcat

    這些工具的最低配置為php 5.x、java 6以上、tomcat 6或以上。

2.設定tomcat

將PHP/Java Bridge的JavaBridge.jar、php-servlet.jar和php-script.jar複製到tomcat的lib目錄下;

修改tomcat安裝目錄下conf資料夾裡的web.xml文件,在web-app標籤裡增加以下的程式碼;

<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>

做完以上步驟後重新啟動tomcat,就可以在任何工程下執行php腳本了,但是無法在webapps/下直接運行,因為tomcat官網對cgiPathPrefix的解釋如下:

#The CGI search path will start at the web application root directory File.separator this prefix. 

在webapps目錄下直接存取檔案index.php

025c980fb1ecd83351f4e1e10db86ff1

在webapps目錄下直接存取檔案index.php

rrreee
訪問時出現

#########                                之後    之後#扣

以上是tomcat不支援php怎麼辦的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn