如何在tomcat安装部署php项目
tomcat是用来部署java web项目的。PHP/Java
Bridge可以实现在jsp和php之间共享session,详见《如何实现jsp和php共享session》php教程。PHP/Java
Bridge的官网可将php项目部署到tomcat。
1.环境准备
安装xampp,这样就安装了php环境,;除了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标签里增加以下的代码;
php.java.servlet.ContextLoaderListener
PhpJavaServlet
php.java.servlet.PhpJavaServlet
PhpCGIServlet
php.java.servlet.fastcgi.FastCGIServlet
prefer_system_php_exec
On
php_include_java
Off
PhpJavaServlet
*.phpjavabridge
PhpCGIServlet
*.php
接着在welcome-file-list标签里增加下面这一行代码
index.php
3.部署php项目
直接到php项目复制到tomcat的webapps目录下,然后启动tomcat,在浏览器输入“http://localhost:8080/php项目名”就可以看到效果了。
4.具体到我的项目
将JavaBridge.jar、php-servlet.jar和php-script.jar拷贝到D:\CALISIR\apache-tomcat-6.0.32\lib子目录。
修改D:\CALISIR\apache-tomcat-6.0.32\conf\web.xml文件。
修改D:\xampp\apache\conf\extra\httpd-ajp.conf文件
Require all granted
# ProxyPass /myapp ajp://127.0.0.1:8009/myapp
# ProxyPassReverse /myapp ajp://127.0.0.1:8009/myapp
# ProxyPass /examples ajp://127.0.0.1:8009/examples smax=0
ttl=60 retry=5
# ProxyPass /ajax ajp://127.0.0.1:8009/ajax smax=0 ttl=60
retry=5
# ProxyPass /servlet ajp://127.0.0.1:8009/servlet smax=0 ttl=60
retry=5
# ProxyPass /infostore ajp://127.0.0.1:8009/infostore smax=0 ttl=60
retry=5
ProxyPass / ajp://127.0.0.1:8009/ smax=0
ttl=60 retry=5
修改D:\xampp\apache\conf\httpd.conf文件
AcceptFilter http none
# AJP13 Proxy
Include "conf/extra/httpd-ajp.conf"
LoadModule jk_module modules/mod_jk.so(不知这行是否有用)
LoadModule access_compat_module
modules/mod_access_compat.so
LoadModule actions_module modules/mod_actions.so
LoadModule alias_module modules/mod_alias.so
LoadModule allowmethods_module modules/mod_allowmethods.so
LoadModule asis_module modules/mod_asis.so
LoadModule auth_basic_module modules/mod_auth_basic.so
LoadModule authn_core_module modules/mod_authn_core.so
LoadModule authn_file_module modules/mod_authn_file.so
LoadModule authz_core_module modules/mod_authz_core.so
LoadModule authz_groupfile_module
modules/mod_authz_groupfile.so
LoadModule authz_host_module modules/mod_authz_host.so
LoadModule authz_user_module modules/mod_authz_user.so
LoadModule autoindex_module modules/mod_autoindex.so
LoadModule cgi_module modules/mod_cgi.so
LoadModule dav_lock_module modules/mod_dav_lock.so
LoadModule dir_module modules/mod_dir.so
LoadModule env_module modules/mod_env.so
LoadModule headers_module modules/mod_headers.so
LoadModule include_module modules/mod_include.so
LoadModule info_module modules/mod_info.so
LoadModule isapi_module modules/mod_isapi.so
LoadModule log_config_module modules/mod_log_config.so
LoadModule cache_disk_module modules/mod_cache_disk.so
LoadModule mime_module modules/mod_mime.so
LoadModule negotiation_module modules/mod_negotiation.so
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_ajp_module modules/mod_proxy_ajp.so
LoadModule proxy_connect_module modules/mod_proxy_connect.so
LoadModule proxy_http_module modules/mod_proxy_http.so
LoadModule rewrite_module modules/mod_rewrite.so
LoadModule setenvif_module modules/mod_setenvif.so
LoadModule socache_shmcb_module modules/mod_socache_shmcb.so
LoadModule ssl_module modules/mod_ssl.so
LoadModule status_module modules/mod_status.so
有些是配置带来的load文件,有些是为这个项目解除注释的load文件。
修改D:\xampp\php\php.ini
extension=php_ldap.dll
extension=php_imap.dll
extension=php_mysql.dll
extension=php_pdo_pgsql.dll
将limesurvey(调查软件)、Discuz(论坛)等解压到并拷贝到D:\CALISIR\dspace\webapps\jspui\ex目录