一、 準備條件
1. 下載軟件
|--phpMyAdmin-4.4.14.1-all-languages.7z
|--tomcat服務器:apache-tomcat-8.0.1.exe
|--java軟件:jdk-7u45-windows-i586.exe
|--mysql數據庫:mysql-essential-5.1.49-win32.msi (這裏最好使用5.5以上的版本)
|--php軟件:php-5.4.40-Win32-VC9-x86.zip
二、搭建流程
1. 安裝tomcat服務器,安裝完成之後,瀏覽器輸入http://localhost:8080/,正常訪問則OK
2. 安裝java軟件,默認安裝即可
3. 安裝mysql數據庫,默認安裝即可
4. 解壓php軟件,並重命名爲php, 不需要安裝,直接拷貝到Tomcat 8.0目錄下
|--修改conf/context.xml文件, 增加“privileged="true"”, 即“<Context privileged="true">”
目的是,讓tomcat能夠啓用CGIServlet
|--php目錄下的php.ini-development複製並重命名爲php.ini,然後修改此文件
cgi.force_redirect=0
extension_dir = "ext"
extension=php_mbstring.dll
extension=php_mysqli.dll
5. 修改文件Tomcat 8.0\webapps\ROOT\WEB-INF\web.xml, 增加如下信息
<servlet>
<servlet-name>php</servlet-name>
<servlet-class>org.apache.catalina.servlets.CGIServlet</servlet-class>
<init-param>
<param-name>clientInputTimeout</param-name>
<param-value>200</param-value>
</init-param>
<init-param>
<param-name>debug</param-name>
<param-value>0</param-value>
</init-param>
<init-param>
<param-name>executable</param-name>
<param-value>C:\Program Files\Apache Software Foundation\Tomcat 8.0\php\php-cgi.exe</param-value> <!-- 注意這裏要修改爲你的本地路徑 -->
</init-param>
<init-param>
<param-name>passShellEnvironment</param-name>
<param-value>true</param-value>
</init-param>
<init-param>
<param-name>cgiPathPrefix</param-name>
<param-value>WEB-INF/phpbin</param-value>
</init-param>
<load-on-startup>5</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>php</servlet-name>
<url-pattern>/phpbin/*</url-pattern>
</servlet-mapping>
<servlet>
<servlet-name>cgi</servlet-name>
<servlet-class>org.apache.catalina.servlets.CGIServlet</servlet-class>
<init-param>
<param-name>debug</param-name>
<param-value>0</param-value>
</init-param>
<init-param>
<param-name>passShellEnvironment</param-name>
<param-value>true</param-value>
</init-param>
<init-param>
<param-name>executable</param-name>
<param-value>C:\Program Files\Apache Software Foundation\Tomcat 8.0\php\php-cgi.exe</param-value> <!-- 注意這裏要修改爲你的本地路徑 -->
</init-param>
<init-param>
<param-name>cgiPathPrefix</param-name>
<param-value>WEB-INF/cgi</param-value>
</init-param>
<load-on-startup>5</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>cgi</servlet-name>
<url-pattern>/cgi-bin/*</url-pattern>
</servlet-mapping>
三、 測試驗證
|--Tomcat 8.0\webapps\ROOT\WEB-INF目錄下,創建文件夾phpbin,並在其中創建文件php_test.php,並輸入如下內容“<?php phpinfo();?> ” 瀏覽器輸入:http://localhost:8080/phpbin/php_test.php, 能夠訪問到頁面則OK
|--Tomcat 8.0\webapps\ROOT\WEB-INF目錄下,創建文件夾cgi, 將phpMyAdmin-4.4.14.1-all-languages.7z解壓,並重命名爲phpMyAdmin, 然後,拷貝到cgi目錄下,瀏覽器中輸入http://localhost:8080/cgi-bin/phpMyAdmin/index.php,能夠訪問到頁面則成功
四、 常見問題
|--1. Cannot run program "php-cgi" CreateProcess error=2
|--原因是php-cgi找不到,改用絕對路徑
|--2. 您應升級到 MySQL 5.5.0 或更高版本。
|--phpMyAdmin\libraries\common.inc.php中搜索“if (PMA_MYSQL_INT_VERSION < 50500) {”
然後改爲“if (PMA_MYSQL_INT_VERSION < 50100) {”