Windows xp 环境下的: apache+php+mysql+tomcat+jdk安装日记

窗体顶端

Windows xp 环境下的: apache+php+mysql+tomcat+jdk

——张安春

需要下载几个软件包:

1.        php- 5.0.3-Win32

2.        pecl- 5.0.4-Win32.zip

3.        apache_ 2.0.54-win32-x86-no_ssl.msi

4.        mysql- 4.1.11-win32.exe

5.         j2sdk-1_4_2-windows-i586.exe

6.         jakarta-tomcat- 4.1.30.exe

7.        mysql-connector-java- 3. 1.8a.zip

8.        mod_jk.dll

 

 

 

安装 PHP5
  假设你的系统安装于 C 盘,否则下列目录均须改成相应的盘的目录。
  将下载来的
php- 5.0.3-Win32 解压缩到 C:/PHP5/ 目录下。将 PECL 扩展模块集合包里的所有文件解压缩到 C:/PHP5/ext/ 目录下。
  复制 C:/PHP5/ 目录下的 php5ts.dll 文件到 C:/windows/(如果是 windows 2000 操作系统,则为 C:/WINNT/ 目录,下同,不再重复说明) 目录下。
  复制 C:/PHP5/ 目录下的所有dll 文件 C:/windows/system32/ 目录下:
  复制 C:/PHP5/ 目录下的 php.ini-dist 文件到 C:/windows/ 目录下,并改名为 php.ini ,并用记事本打开编辑:
  定位到下面两行:

; Directory in which the loadable extensions (modules) reside.
extension_dir = "./"

修改下面一行使它指向 C:/PHP5/ext/ 目录,修改后如下:

; Directory in which the loadable extensions (modules) reside.
extension_dir = "C:/PHP5/ext/"

定位到下面两行:

;Windows Extensions
;Note that ODBC support is built in, so no dll is needed for it.

可以看到下面列出了所有可支持扩展,我们可以去掉前面的分号来使 PHP 支持相应的扩展。这跟你的机器已经安装的软件有关不过extension=php_mbstring.dll(宽字符集扩展)和extension=php_mysql.dll一定要选上,为了后面安装mysql提供支持。

 

 

 

9.        安装apache_ 2.0.54-win32-x86-no_ssl.msi
 准备好下载下来的apache_2.x.x-win32-x86-no_ssl.msi 。双击后开始安装。一步 Next 下来,同意许可协议后会有填写服务器信息的页面,本地调试,前面两个输入 localhost 即可。

 

 

 

一路 Next 下来,均按照默认路径安装――当然你也可以选择你自己需要的路径。Apache 会自动安装并启动相关服务。

 

 

 

 

 

 

我们可以从这个监控器来重起、停止、启动 Apache 服务。双击小图标打开控制界面:

接下来对 Apache 的配置文件进行配置,用记事本打开 C:/Program Files/Apache Group/Apache2/conf/ (我这里是按照默认安装路径安装,后面的设置按照自己的安装路径做相应的改变) 目录下的 httpd.conf 文件,定位到下面这行:


DirectoryIndex index.html index.html.var

在其后面添加一个 PHP 默认页,通常是 index.php ,如下:

DirectoryIndex index.html index.html.var index.php

为了使 Apache 识别 PHP 的相关扩展名,搜索并定位到下面这个部分:

<Directory "C:/Program Files/Apache Group/Apache2/cgi-bin">
   AllowOverride None
   Options None
   Order allow,deny
   Allow from all
</Directory>

在后面添加如下两行:

AddType application/x-httpd-php .php .phtml .php3 .php4
AddType application/x-httpd-php-source .phps

指定 php 模块,找到并定位到如下这行:


#LoadModule ssl_module modules/mod_ssl.so

在下面添加一行:

LoadModule php4_module c:/php5/php5apache2.dll

使它指向 PHP5 目录下的 php5apache2.dll 文件,路径一定要准确。

修改DocumentRoot为你所想要的目录比如说e:/web

另外,如果要禁止目录浏览,查找并定位到下面这行:Options Indexes FollowSymLinks

去掉Indexes 变成:Options FollowSymLinks

OK,保存 httpd.conf 文件后重起 Apache 服务器。

安装MySQL

运行mysql- 4.1.11-win32.exe

设置好root密码到这里 MySQL 的安装告一段落,非常简单。
安装MySQL管理软件phpmyadmin
二、安裝

 

 

 

1. phpMyAdmin- 2.5.1-php.zip 置放于网页的主目录

2. 解压缩

3. 将解压缩后的 phpMyAdmin- 2.5.1 目录更改名称,建议以容易记但不易被人猜到放那里。

 

 

 

 

 

 

三、设定

 

 

 

1. 利用文昼编辑器修改设定档 config.inc.php

 

 

 

....()

* If the auto-detection code does work properly, you can set to TRUE the

* $cfg['PmaAbsoluteUri_DisableWarning'] variable below.

*/

$cfg['PmaAbsoluteUri'] = 'http://140.128.51.xxx/phpMyAdmin/';

(设定 phpMyAdmin 安装的网址)

 

 

 

/**

* Disable the default warning about $cfg['PmaAbsoluteUri'] not being set

* You should use this if and ONLY if the PmaAbsoluteUri auto-detection

* works perfectly.

*/

$cfg['PmaAbsoluteUri_DisableWarning'] = FALSE;

 

 

 

/**

* Disable the default warning that is displayed on the DB Details Structure page if

* any of the required Tables for the relationfeatures could not be found

*/

$cfg['PmaNoRelation_DisableWarning'] = FALSE;

 

 

 

 

 

 

/**

* Server(s) configuration

*/

$i = 0;

...().....................

 

 

 

$cfg['Servers'][$i]['auth_type'] = 'config';   // Authentication method (config, http or cookie based)?

(认证模式)

 

 

 

$cfg['Servers'][$i]['user'] = 'root';         // MySQL user

$cfg['Servers'][$i]['password'] = '密码';      // MySQL password (only needed

// with 'config' auth_type)

认证模式:

·       config (不用密码)

·       http 模式认证

安装jdk

Windows下,直接运行下载的j2sdk-1_4_1_01-windows-i586.exe文件,根据安装向导安装
到一个目录,例如安装到d:/server/j2sdk
1.
配置环境变量:
添加CLASSPATH变量
变量值为
./;%CLASSPATH%;D:/server/j2sdk 1.4.0/lib/dt.jar;d:/server/j2sdk1.4.0/lib/tools.jar;
d:/server/j2sdk1.4.0/bin
这个配置保证java运行时可以找到class类。
2.
添加JAVA_HOME变量,变量值为d:/server/j2sdk1.4.0
3.
在原来的path变量中,添加d:/server/j2sdk1.4.0/bin,这样无论在何处运行java名令都行。
重新启动

安装tomcat

我用的是jakarta-tomcat- 4.1.30.exe安装文件,在windows下一路点"确定"就行了,比较简单,安装目录为
d:/server/tomcat
下面设置环境变量:
jdk的环境变量,添加变量TOMCAT_HOME,值为d:/server/tomcat;增加变量CATALINA_HOME,值为
d:/tomcat/server
,在path变量中加入d:/server/tomcat/bin
下面启动tomcat,运行tomcat目录下的,bin/startup.bat文件就行啦,出现tomcat运行控制台,tomcat成功
启动.
IE中输入http://localhost:8080/,看到大猫的吧,则tomcat安装成功.

安装mysql驱动器jdbc
解开jdbc驱动包,把里面的mysql-connector-java- 3.1.8-bin.jar复制到tomcat的根目录common/lib文件夹下 ,就行了

测试代码:test.jsp

<%@ page language="java" contentType="text/html;charset=GBK" %>
<%@ page import="java.sql.*" %>
<%

try {
out.println("quailzhangs");
Class.forName("com.mysql.jdbc.Driver");
DriverManager.registerDriver(new com.mysql.jdbc.Driver());
out.println("hehe");
}
catch (Exception E) {
out.println("Unable to load driver.");

}
%>

Tomcat apache 整合

Tomcat只是一个用来解析*.jsp文件的容器,它不是服务器,其解析静态htm/html文件的能力远远不如apache,
整合后在同一个端口使apache来解析静态网页,而遇到*.jsp网页时,交由tomcat来解析.
第一步:把 mod_jk.dll复制到apache根目录module文件夹下。
第二步:配置APACHE

打开apache根目录下conf/httpd.conf

添加以下语句:

#------------------------------------------

#connecting to tomcat using ajp13
LoadModule jk_module modules/mod_jk.dll
JkWorkersFile "d:/server/tomcat/conf/workers.properties"
JkMount /servlet/* ajp13
JkMount /*.jsp ajp13


#-----------------------------------------------------

注意:以上语句的基本意思是:
loadModule
一行:加载mod_jk.dll动态链接库模块,使之与tomcat通讯
jkWorkersFile:
指明工作时tomcat相关文件workers.properties位置
jkMount:
两行指明当遇到*.jspservlet时,交由ajp13协议,继而转发给tomcat处理。
第三步:建立workers.properties文件,tomcat根目录conf下建立workers.properties文件,内容为:
workers.tomcat_home=d:/server/tomcat
workers.java_home=d:/server/j2sdk 1.4.0
ps=/
# worker.list=ajp13
worker.list=ajp12,ajp13

worker.ajp12.port=8007
worker.ajp12.host=localhost
worker.ajp12.type=ajp12
worker.ajp12.lbfactor=1

worker.ajp13.port=8009
worker.ajp13.host=localhost
worker.ajp13.type=ajp13
worker.ajp13.lbfactor=1

worker.loadbalancer.type=lb

worker.loadbalancer.balanced_workers=ajp12, ajp13
worker.inprocess.type=jni
worker.inprocess.class_path=$(workers.tomcat_home)$(ps)classes
worker.inprocess.class_path=$(workers.tomcat_home)$(ps)lib$(ps)jaxp.jar

worker.inprocess.class_path=$(workers.tomcat_home)$(ps)lib$(ps)parser.jar

worker.inprocess.class_path=$(workers.tomcat_home)$(ps)common$(ps)lib$(ps)jasper.jar

worker.inprocess.class_path=$(workers.tomcat_home)$(ps)common$(ps)lib$(ps)servlet.jar

worker.inprocess.class_path=$(workers.tomcat_home)$(ps)common$(ps)lib$(ps)webserver.jar

worker.inprocess.class_path=$(workers.java_home)$(ps)lib$(ps)tools.jar

worker.inprocess.cmd_line=-config

worker.inprocess.cmd_line=$(workers.tomcat_home)/conf/jni_server.xml

worker.inprocess.cmd_line=-home

worker.inprocess.cmd_line=$(workers.tomcat_home)

worker.inprocess.jvm_lib=$(workers.java_home)$(ps)jre$(ps)bin$(ps)classic$(ps)jvm.dll


worker.inprocess.stdout=$(workers.tomcat_home)$(ps)inprocess.stdout

worker.inprocess.stderr=$(workers.tomcat_home)$(ps)inprocess.stderr

worker.inprocess.sysprops=tomcat.home=$(workers.tomcat_home)

注意以上文件第一、二行填上tomcatjdk的相关目录.

第四步:配置tomca/conf下的server.xml文件,这个是tomcat的主要配置文件,重要配置如下:
1.
虚拟目录设置:
找到下面内容:
<Host name="localhost" debug="0" appBase="/webapps"
unpackWARs="true" autoDeploy="true">
修改为:
<Host name="localhost" debug="0" appBase="d:/server/www"
unpackWARs="true" autoDeploy="true">
使tomcat主目录为d:/server/www.
找到下面内容:
<Context path="examples" docBase="/examples" debug="0"
reloadable="true" crossContext="true">
修改为
<Context path="" docBase="/" debug="0"
reloadable="true" crossContext="true">
这个我的理解是应该是使tomcat根目录下的jsp作为一个虚拟主机吧.
2.
设置tomcat监听端口,找到下面的内容:
<Connector className="org.apache.coyote.tomcat4.CoyoteConnector"
port="8080" minProcessors="5" maxProcessors="75"
enableLookups="true" redirectPort="8443"
acceptCount="100" debug="0" connectionTimeout="0"
useURIValidationHack="false" disableUploadTimeout="true" />
默认的端口是8080,但这个大家都知道,最好修改一下,假设修改为:8123,则如下:
<Connector className="org.apache.coyote.tomcat4.CoyoteConnector"
port="8123" minProcessors="5" maxProcessors="75"
enableLookups="true" redirectPort="8443"
acceptCount="100" debug="0" connectionTimeout="0"
useURIValidationHack="false" disableUploadTimeout="true" />
3.
找到以下8009端口的地方,这个很重要,通过8009,tomcatapache互相通讯,如果下面的部分
<!---->注释掉,一定要把<!---->去掉.
<!-- Define a Coyote/JK2 AJP 1.3 Connector on port 8009 -->
<Connector className="org.apache.coyote.tomcat4.CoyoteConnector"
port="8009" minProcessors="5" maxProcessors="75"
enableLookups="true" redirectPort="8443"
acceptCount="10" debug="0" connectionTimeout="0"
useURIValidationHack="false"
protocolHandlerClassName="org.apache.jk.server.JkCoyoteHandler"/>
第五步:配置tomcatconf/web.xml文件:
类似于apache404错误页面的配置,在最后</web-app>一行之前加入以下内容:

<error-page>
<error-code>404</error-code>
<location>/error/noFile.htm</location>
</error-page>
<error-page>
<exception-type>java.lang.NullPointerException</exception-type>
<location>/error/error.jsp</location>
</error-page>
第一个<error-page></error-page>之间的是404未找到jsp网页的错误导向页面,使之发生404错误时,
网页导向至/error/noFile.htm,也可以用类似方法添加其多的错误代码导向页面。
第二个<error-page></error-page>之间的是当jsp网页出现java.lang.NullPointerException导常时
导向至/error/error.jsp错误页面。那么需要在第个jsp网页中加入以下内容:
<%@ page errorPage="/error/error.jsp" %>
典型的error.jsp错误页面的程序写法如下:

<%@ page contentType="text/html;charset=GB2312"%>
<%@ page isErrorPage="true"%>
<html>
<head><title>
错误页面</title></head>

<body>
出错了:</p> 错误信息: <%= exception.getMessage() %><br>

Stack Trace is : <pre><font color="red"><%
java.io.CharArrayWriter cw = new java.io.CharArrayWriter();
java.io.PrintWriter pw = new java.io.PrintWriter(cw,true);
exception.printStackTrace(pw);
out.println(cw.toString());
%></font></pre>
</body>
</html>
当出现NullPointerException异常时tomcat会把网页导入到error.jsp,且会打印出出错信息。
第五步主要是安全考虑,在正常情况下,如果找不到网页即出现404错误或者jsp程序出错,在客户端
会列举出类似于如下的信息(tomcat为例,resin类似):
HTTP Status 404 - /sdags.jsp

--------------------------------------------------------------------------------

type Status report

message /sdags.jsp

description The requested resource (/sdags.jsp) is not available.


--------------------------------------------------------------------------------

Apache Tomcat/5.0.19

这样服务器版本会被别人看到,如果完成第五步的配置,就不会出现这种情况.
第六步:配置httpd.conf文件
这种方法把tomcatapache的根目录设置为同一目录,但是必须限制客户对目录下一些文件的访问,比如存入class
web-inf,在httpd.conf下添加以下代码:
#deny the access to WEB-INF
<Directory ~ "/WEB-INF/">
Order allow,deny
Deny from all
</Directory>
这样,当试图记问http://localhost/web-inf/时,apache将会拒绝.

到此为至,tomcatapache的整合就完成啦.重新启动tomcatapache,
jsp网页放到d:/server/www/下,例如:
<html>
<h1>JSP test<hr>

<%out.println("Hello World!");%>

</html>
存为index.jsp,在IE中输入http://localhost:8123/index.jsp
如果出现了
Hello World!
刚说明tomcat运行正常,在IE中输入http://localhost/index.jsp,如果也出现
Hello World!

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值