Apache2.2.4+Tomcat5.5.17+Php5.2.1+MySQL5.0.37整合(lipeng)

来源:互联网 发布:ubuntu 浏览器下载慢 编辑:程序博客网 时间:2024/06/08 16:50

Apache2.2.4+Tomcat5.5.17+Php5.2.1+MySQL5.0.37整合

1:前提准备:

安装文件:

Tomcat5.5.17.exe

下载:http://apache.justdn.org/tomcat/tomcat-5/v5.5.17/bin/apache-tomcat-5.5.17.exe

apache_2.2.4-win32-x86-no_ssl.msi

下载:http://apache.mirrors.tds.net/httpd/binaries/win32/apache_2.2.4-win32-x86-no_ssl.msi

php-5.2.1-win32-installer.msi

下载: http://cn2.php.net/get/php-5.2.1-win32-installer.msi/from/this/mirror

       Mysql5.0.37

下载:  http://dev.mysql.com/downloads/

 

注意:这里每个版本都下载安装版,可以减少很多配置,也就是节约你的时间、精力。

 

测试文件:

       test.php

              <?php

            phpinfo();

        ?>

       test.jsp

              <HTML>

<HEAD>

<TITLE> JSP TEST PAGE  </TITLE>

</HEAD>

<BODY>

<%out.println("<H1>hello word!jsp</H1>");%>

</BODY>

</HTML>

       testdb.php

              <?php

$link=mysql_connect('localhost','root','123456');

if(!$link) echo "fail";

else echo "success";

mysql_close();

?>

             

 

2.安装tomcat,不用配置。(我的安装路径:D:/WEBSERVER/Tomcat5.5)

    打开IEhttp://localhost:8080/  出现小猫说明安装成功!

3.安装apache,也不用配置. (我的安装路径:D:/WEBSERVER/Apache2.2)

       打开IEhttp://localhost /  出现“It works!”说明安装成功!

 

 

4. 整合apache2.2.4php5.2.1

安装php5(我的安装路径:D:/WEBSERVER/PHP/),安装的时候只需选择apache的版本,这里选择apache 2.2.x,然后选择你的apache安装位置(D:/WEBSERVER/Apache2.2)。其他的不用配置,默认即可。重启apache!完成后即可解析 .php文件。

 

       测试:将两个测试文件D:/WEBSERVER/Apache2.2/htdocs下,然后IEhttp://localhost/test.php出现php的相关版本信息说明整合apache2.2.4php5.2.1成功。

http://localhost/test.jsp,出现空白,因为这时apache不能解析.jsp

 

5. 整合apache2.2.4tomcat5.5.17

       因为apache2.2.4采用mod_proxy连接apachetomcat,所以配置非常简单。这里我们只需要改动D:/WEBSERVER/Apache2.2/conf/ 下的httpd.conf的两个地方即可:

A#LoadModule proxy_module modules/mod_proxy.so

#LoadModule proxy_ajp_module modules/mod_proxy_ajp.so

              找到这两行,把前面的#去掉。

       B:在最后加上

ProxyPass  /  ajp://127.0.0.1:8009/

ProxyPassReverse  /  ajp://127.0.0.1:8009/

保存后启动apache,再启动tomcat,地址栏输入http://localhost:8080/  出现小猫说明整合apache2.2.4tomcat5.5.17成功!

 

测试:将两个测试文件D:/WEBSERVER/Tomcat5.5/webapps/ROOT 下,然后IE

http://localhost/test.jsp 显示“hello word!jsp”,OK了!但是此时IE

http://localhost/test.php,却不行(我最开始的时候表现是 服务器返回php文件,没有解析的,可以保存,类似下载)。

 这主要是因为apache把所有80端口的请求都转发给了tomcat8009ProxyPass  /  ajp://127.0.0.1:8009/    ProxyPassReverse  /  ajp://127.0.0.1:8009/),由tomcat处理请求,这时的apache只相当于一个转发器的作用!而tomcat不能解析.php 所以对.php文件不成功。此时要是关闭tomcat,再访问还会出现Service Temporarily Unavailable 错误!

    解决办法:将请求中静态的页面交给apache处理,动态请求交给tomcat处理。因为他们在各自的处理效率上比较高,这也是整合apachetomcat的一个作用。

    这里我们是要将php交给apache处理,而把jsp转发给tomcat处理。先看下面三句:

ProxyPass /images/  !
ProxyPass / ajp://127.0.0.1:8009/
ProxyPassReverse / ajp://127.0.0.1:8009/

 

第一句表示 /images/  下的请求不转发,第23句的“  /  表示全部转发到8009端口(tomcat监听的)。所以这时只要把不想转发到tomcat处理的放在D:/WEBSERVER/Apache2.2/htdocs 名为images文件夹的下面即可。比如:我们把

test.php放在D:/WEBSERVER/Apache2.2/htdocs/images 下,

test.jsp放在D:/WEBSERVER/Tomcat5.5/webapps/ROOT下,在分别

http://localhost/images/test.php

http://localhost/test.jsp

就都可以显示我们需要的结果了!

Apache tomcat各司其职。这里都只是测试,具体项目,服务器的其他设置都可以通过在httpd.cong里修改,改变路径等。顺便说一下:这里的Apache tomcat是通过Mod-proxy连接起来的。Mod-proxy的缺点是,当其中一台tomcat停止运行的时候,apache仍然会转发请求过去,导致502网关错误。但是只要服务器再启动就不存在这个问题。

Mod-proxy优点是.可以只将Apache置于公网,节省公网IP地址资源。可以通过设置来实现Apache专门负责处理静态网页,让Tomcat专门负责处理JSPservlet等动态请求。缺点是:如果前置Apache代理服务器停止运行,所有集群服务将无法对外提供。

 

6.安装MySQL

        这里面就没有什么了,除了一两项需要手动设置一下其他默认就可以了。

 

7.PHP连接MySQL数据库。

      

       首先注意:安装版的php5.2.1默认没有安装支持MySQL的组件,所以我们在安装的时候需要手动选择安装该组件:

选中MySQL组建 ,安装……next…..finish

 

测试与解决:

testdb.php放在images文件夹下,IEhttp://localhost/images/testdb.php

1.Fatal error:Call to undefined function mysql_connect()……

解决:

1.php5目录下的libmysql.dll复制到system32目录下,  

2.php5目录下的php.ini复制到windows目录下并命名为php.ini  

重启服务器

 

    这时就可以显示:success  表明PHP连接MySQL数据库成功!

 

 

 

 

 

原创粉丝点击