RH8.0+Apache+php/jsp+MySQL整合实例

发布于 2022-10-01 00:06:18 字数 12999 浏览 17 评论 0

RH8.0+Apache+php/jsp+MySQL整合实例

以下是本人在Red Hat Linux 8.0下安装Apache,使之支持php与jsp,并以MySQL作为后台数据库的完整过程。
现整理出来,以供大家参考,时间仓促,如有不妥,望加以指正。
(在Red Hat Linux 8.0上测试通过)

所需软件:
        j2sdk-1.3.1_04-linux-i586.bin
        apache_1.3.12.tar.gz
        php-4.03pl1.tar.gz
        mysql-3.22.27.tar.gz
        jakarta-tomcat-3.1.1.tar.gz
        mod_jserv.so
        mm.mysql.jdbc-1.2c.tar.gz
(注:在安装RH8.0时,选择定制安装,不需要的一律不装,以上软件安装目录为/usr/local)

(一)软件安装及相关配置
1:  安装jdk
    复制j2sdk-1.3.1_04-linux-i586.bin文件到/usr/local目录下,
    #chmod +x j2sdk-1.3.1_04-linux-i586.bin   (更改文件属性为可执行)
    #./j2sdk-1.3.1_04-linux-i586.bin
    生成/usr/local/jdk1.3.1_04目录

2:  安装MySQL
    由于在安装PHP时要用到关于MySQL的相关参数,所以在安装PHP、Apache之前,应先安装MySQL数据库。
    #tar vfxz mysql-3.22.27.tar.gz            (将数据库压缩包解压,并创建名为“mysql-3.22.27”一个目录)
    #cd mysql-3.22.27                         (进入解包分发的顶及目录)
    #./configure --prefix=/usr/local/mysql    (在编译前进行参数配置,参数prefix对应相应的安装目录)
    #make                                     (对配置好安装参数的MySQL的源代码进行编译)
    #make install                             (开始安装MySQL,需要root用户来运行此命令)
    #scripts/mysql_install_db                 (创建MySQL授权表)
    通过以上步骤,即可成功安装MySQL数据库。
    安装完成后,需启动MySQL服务器。
    #/usr/local/mysql/bin/safe_mysqld &       (启动MySQL服务器)
3:  安装Apache和PHP
    #tar vfxz apache_1.3.12.tar.gz            (将Apache解包,并创建名为“apache_1.3.12”的一个目录)
    #tar vfxz php-4.03pl1.tar.gz              
    #cd apache_1.3.12
    #./configure --prefix=/usr/local/www
    #cd ../php-4.03pl1
    #./configure --with-mysql --with-apache=../apache_1.3.12 --enable-track-vars
    (参数with-mysql表示支持MySQL数据库,with-apache对应Apache源文件的路径)
    #make
    #make install
    #cd ../apache_1.3.12
    #./configure --prefix=/usr/local/www --activate-modules=src/modules/php4/libphp4.a --enable-module=so
    (在Apache源文件目录中加入PHP的模块,其中--enable-module=so加入对mod_jserv.so的支持)
    #make
    #make install
    #cd ../php-4.03pl1
    #cp php.ini-dist /usr/local/lib/php.ini
4:  复制mod_jserv.so
    将mod_jserv.so复制到Apache的libexec目录
    #cp mod_jserv.so /usr/local/www/libexec
5:  安装Tomcat
    复制jakarta-tomcat-3.1.1.tar.gz文件到/usr/local目录下,执行以下命令:
    #tar vfxz jakarta-tomcat-3.1.1.tar.gz
    生成/usr/local/jakarta-tomcat目录
6:  安装MySQL的jdbc驱动
    复制mm.mysql.jdbc-1.2c.tar.gz文件到/usr/local目录下
    #tar vfxz mm.mysql.jdbc-1.2c.tar.gz
    生成/usr/local/mm.mysql.jdbc-1.2c目录
7:  配置系统变量
    #vi /etc/profile                            (编辑/etc/profile文件)
    在文件结尾加入:
    JAVA_HOME=/usr/local/jdk1.3.1_04
    JRE_HOME=/usr/local/jdk1.3.1_04/jre
    TOMCAT_HOME=/usr/local/jakarta-tomcat
    CLASSPATH=$JAVA_HOME/lib/tools.jarJAVA_HOME/lib/dt.jar:.JRE_HOME/lib:/usr/local/mm.mysql.jdbc-1.2c
    PATH=$PATHJAVA_HOME/binJRE_HOME/binTOMCAT_HOME/bin
    export JAVA_HOME JRE_HOME TOMCAT_HOME CLASSPATH PATH
   
    (注:配置系统变量,需注销后重新登陆,才能使设置生效)
8:  配置Apache的httpd.conf
    复制tomcat.conf文件到apache的conf目录
    #cp /usr/local/jakarta-tomcat/conf/tomcat.conf /usr/local/www/conf
    编辑apache的httpd.conf文件
    把以下两行前面的注释去掉:
           AddType application/x-httpd-php .php
           AddType application/x-httpd-source .phps
    告诉Apache服务器,扩展名.php是一个特殊的程序文件。
    在文件结尾加入:
           Include /usr/local/www/conf/tomcat.conf
    (关于Apache的详细配置,可以参考其它资料)
9:  启动apache和tomcat
    #cd /usr/local/www/bin
    #./apachectl start                         (启动apache服务器,关闭使用./apachectl stop)
    #cd /usr/local/jakarta-tomcat/bin
    #./tomcat.sh start                         (启动tomcat,关闭使用./tomcat.sh stop)
经过以上步骤,linux+apache+php/jsp+mysql环境已基本建立,可以测试一下php/jsp了。

(二)测试php和jsp,以及与MySQL数据库的连接
1: MySQL前期准备
   在之前安装的MySQL中,没有设置root密码。现在创建一个测试数据库,命名为my_test:
   #mysql -u root -p
   MySQL>;create database my_test;                                      (创建数据库my_test)
   MySQL>;use my_test;                                                  (转到my_test数据库中)
   MySQL>;create table my_test_table (test_column char(20) not null);   (在my_test数据库中建立一个数据表my_test_table)
   MySQL>;insert my_test_table values ('Welcome to MySQL!');            (在my_test_table表中增加一行)
   MySQL>;exit
   #

2:(1)测试php
   #cd /usr/local/www/htdocs
   #vi info.php
   其中,info.php中的内容如下:
   <? phpinfo(); ?>;
   保存退出,打开浏览器,在地址栏输入http://localhost/info.php
   如果可以看到一个很长的php信息列表,则表明php与apache整合成功。
   
   (2)测试php连接mysql
   php连接MySQL很简单,不需作任何设置。
   在Apache安装目录的htdocs目录下建立一个新文件mysqltest.php:
   <html>;
   <head>;
   <title>;php连接mysql</title>;
   <meta http-equiv="Content-Type" content="text/html" charset=gb2312">;
   </head>;
   <body>;
   <?
   $dbcnx=mysql_connect("localhost","root","";
   mysql_select_db("my_test";
   $result=mysql_query("select * from my_test_table",$dbcnx);
   while ($row=mysql_fetch_array($result))
   echo ("<p>;<h1>;".$row["test_column"]."</h1>;</p>;";
   ?>;
   </body>;
   </html>;
       其中,mysql_connect()用来连接数据库服务器;
             mysql_select_db()用来选择工作的数据库;
             mysql_query()用来执行SQL查询;
             mysql_fetch_array()用来获得select的结果集
   打开浏览器,在地址栏输入http://localhost/mysqltest.php
   应该可以看到 Welcome to MySQL! 这条信息。
3:(1)测试jsp
   打开浏览器,在地址栏输入http://localhost/examples
   正常可看到jsp,servlet目录,说明apache和tomcat已经成功连接,可以使用jsp和servlet了。      
   (2)测试jsp连接MySQL
   jsp连接MySQL需要一个第三方的JDBC驱动程序,
   这里使用mm.mysql.jdbc-1.2c.tar.gz(在前面已经配置了系统变量)

   创建一个JavaBean,名为DBconn.java,在Tomcat的webapps/examples/WEB-INF/classes下创建
   Mysqltest目录,将该文件保存在这个目录中,DBconn.java用来封装与数据库链接的操作。
   DBconn.java的内容如下:

   package Mysqltest;
   import java.sql.*;
   public class DBconn
   {String DBDriver="org.gjt.mm.mysql.Driver";
   String ConnStr="jdbc:mysql://localhost/my_test";
   String MyUser="root";
   String MyPassword="";
   Connection conn = null;
   ResultSet rs = null;
   public DBconn()
   {try
   {Class.forName(DBDriver);
   }
   catch(java.lang.ClassNotFoundException e)
   {System.err.println("DBconn (): " + e.getMessage());
   }
   }
   public ResultSet executeQuery(String sql)
   {rs = null;
   try
   {conn = DriverManager.getConnection(ConnStr,MyUser,MyPassword);
   Statement stmt = conn.createStatement();
   rs = stmt.executeQuery(sql);
   }
   catch(SQLException ex)
   {System.err.println("aq.executeQuery:"+ex.getMessage());
   }
   return rs;
   }
   }
   利用JDK的javac命令编译DBconn.java
   #javac DBconn.java
   形成相应的class文件。
   在Tomcat的webapps/examples/jsp目录下建立Mysqltest.jsp文件,内容如下:
   <%@ page contentType="text/html; charset=gb2312" %>;
   <html>;
   <head>;
   <title>;jsp连接mysql</title>;
   </head>;
   <body>;
   <%@ page language="java" import="java.sql.*" %>;
   <jsp:useBean id="DBconn1" scope="page" class="Mysqltest.DBconn" />;
   <%
   ResultSet RS = DBconn1.executeQuery
   ("SELECT * FROM my_test_table";
   while (RS.next()) {
   out.print("<h1>;" +RS.getString("test_column" +"</h1>;";
   }
   RS.close();
   %>;
   </body>;
   </html>;

   在浏览器的地址栏输入http://localhost/examples/jsp/Mysqltest.jsp
   应该可以看到 Welcome to MySQL! 信息。

   至此,所有的安装配置已经完成,在linux上可以同时运行php+mysql和jsp+mysql了。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(9

向日葵 2022-10-08 00:06:18

我用的是php4.3.1+httpd2.0安装的,测试通过!但我的一个程序却出错了,
提示我的一个曾在php4.2.2上运行下常的一个函数"bcdiv()"没有定义,这是为什么呀?

下壹個目標 2022-10-08 00:06:18

如果我是先装的php+apache,再装mysql怎么让php能够联接mysql呢?

不重装可疑解决吗?

少钕鈤記 2022-10-08 00:06:18

版本老的要死

岁月静好 2022-10-08 00:06:18

???

贱人配狗天长地久 2022-10-08 00:06:18

SQL is independent of Apache as far as i know

情徒 2022-10-08 00:06:18

[quote]原帖由 "spnoten"]版本老的要死[/quote 发表:

版本是老了一点,主要作学习 测试,仅供参考!
多多指教!

北方的韩爷 2022-10-08 00:06:18

原帖由 "deadcat" 发表:
如果我是先装的php+apache,再装mysql怎么让php能够联接mysql呢?

不重装可疑解决吗?

在安装PHP时要用到关于MySQL的相关参数,所以在安装PHP、Apache之前,应先安装MySQL数据库。

先安装apache和php后,再装mysql的情况没有测试过.

望高手指教!

萌面超妹 2022-10-08 00:06:18

兄弟,你要的这版本都是老大爷了,建议您老重新要最新版的来整合.

思念满溢 2022-10-08 00:06:18

不管是哪个版本的,我在RH8.0上安装mysql到也下面这一步都不好用为什么?
#./configure --prefix=/usr/local/mysql
我在7.3上用是好用的,一整套除了系统是旧的其余都是新的,只是mysql用的不是最新的4.0用的是3.23

请问:安装mysql需要什么样的系统环境啊?我的系统只安装了make、gcc的环境,安装其它东西都已经好用的,只是卡在mysql上了。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文