做一个果酱瓶[JAMPOT]服务器 ——组建JSP、PHP、MYSQL WEB服务器
忙了几天,在网上参考了无数文章,经历了数不清的失败,总算做好了一个支持JSP、PHP编程语言,MYSQL 数据库的网页服务器,现将经验心得整理如下,供朋友们参考,Let’s Go!
一、 应用环境及所需软件 1. 操作系统:WindowsXP sp2 2. 应用软件: (1) J2sdk-1_4_2-windows-i586.exe 说明:SUN公司出品的JAVA开发包软件; (2) Apache_2.0.52-win32-x86-no_ssl.exe 说明:目前最流行的个人WEB服务器软件; (3) Mysql-4.1.7-win.exe 说明:The world's most popular open source database,关键可能是便宜吧J (4) mod_jk_2.0.46.dll 说明:用于Apache和Tomcat之间通讯; (5) Php-5.0.2-Win32.zip 说明:最流行的网页后台编程语言PHP (6) phpMyAdmin-2.6.0.zip 说明:用php编写的mysql数据库管理软件 (7) [Odbc] mysql-connector-java-3.1.7-bin.jar 说明:JSP访问连接Mysql数据库时用驱动文件; (8) Tomcat-5.0.30.exe 说明:一个JSP应用容器,不能完全代替Apache的; 以上软件都可以在网上找到,也可以到这里来下载。
二、 安装软件及配置 为了方便,请先建立D:\Jampot文件夹,好了,开始安装软件: 1. 安装JDK 运行J2sdk-1_4_2-windows-i586.exe,在选择安装路径的时候,选择D:\Jampot\J2sdk1.4.2,安装完成后,然后到“我的电脑>属性>高级>环境变量”做如下配置: 添加JAVA_HOME变量,变量值为:D:\Jampot \j2sdk1.4.2 修改path变量,添加D:\ Jampot\J2sdk1.4.2\bin,这样无论在何处运行java命令都行。 重新启动cmd进入dos,运行java和javac看有没有反应,如果出现命令的帮助,那么java就安装成功了,也可以运行一个java小程序看看: public class TestJdk{ public static void main(String arg[]){ System.out.println("Hello,The Jdk is install successful!"); } } 保存为TestJdk.java,然后在CMD下运行 javac TestJdk.java java TestJdk 如果出现“Hello,The Jdk is install successful!”,那么我们就可以进行下一步了。
2. 安装Apache (1)运行Apache_2.0.52-win32-x86-no_ssl.exe,一路点"确定"和"接受"就行,选择路径时输入D:\Jampot;安装成功后的Apache目录为D:\Jampot\Apache2,安装成功后Apache服务会自动运行,在IE中输入http://localhost/可以看到apache的主页。 (2)修改httpd.conf apache的配置文件是httpd.conf,位于apache根目录的下的conf文件夹下 ① 修改默认网站根目录: 在D:\Jampot下建立文件夹www,以此作为网站的根目录 DocumentRoot "D:/Jampot/Apache2/htdocs" 改为DocumentRoot "D:/Jampot/www" ② 修改字符设置 apache解析中文网页时会产生乱码, 修改AddDefaultCharset ISO-8859-1为AddDefaultCharset GB2312 或将在AddDefaultCharset ISO-8859-1前加##将其屏蔽 ③ 修改默认主页 当访问目录时,apache会自动导入的主页,优先级以先后顺序为准 把DirectoryIndex index.html index.html 改为 DirectoryIndex index.html index.jsp index.php default.jsp default.php index.html ④ 设置错误页面[建议设置] 这样对于你的网站会更安全些,如果没设置,别人在你的网址后随便输入一个路径,会显示404错误,并且会显示你的服务器版本号,服务器配置一目了然,为了避免这种情况,可以设置错误页面。当出现404错误,即找不到网页时,把访问者导入到一个错误页面,找到httpd.conf中的这一部分: # Customizable error responses come in three flavors: # 1) plain text 2) local redirects 3) external redirects # # Some examples: #ErrorDocument 500 "The server made a boo boo." #ErrorDocument 404 /missing.html #ErrorDocument 404 "/cgi-bin/missing_handler.pl" #ErrorDocument 402 http://www.example.com/subscription_info.html 将#ErrorDocument 404 /missing.html一行修改为ErrorDocument 404 /error/noFile.htm,其中noFile.htm为D:\Jampot\www\error\下一个错误文件,需要你自己建立。当发生404错误时,进入noFile.htm页面,可以提示网页没有找到。这样就不可能看到你的服务器软件信息了。也可以设置其它的错误导向的页面,具体http响应错误编号请查阅相关资料。 重新启动apache,如果没意外,此时已经安装成功,把静态页面放到d:\server\www\error\目录下,看能不能成功解析。随便输入一个:http://localhost/sdagasgdasasg.htm,看是不是导向你设置的404错误,即noFile.htm错误页面. 成功了吗?好了,开始下一步。
3. 安装Mysql 运行Mysql-4.1.7-win.exe,默认安装是在C:\mysql,在这里我们将Mysql数据库的安装到D:\Jampot\Mysql4_1,对于mysql 4.1以前的版本,在安装完成后可能需要将Mysql目录内的my-small.cnf复制到C:\Windows下,更名为my.ini并做如下修改: [mysqld] basedir=D:/Jampot/Mysql datadir= D:/Jampot/Mysql/data 修改path变量,添加D:\ Jampot\Mysql4_1\bin,这样无论在何处运行mysql命令都行。 启动CMD,输入: mysql –u root –p 输入密码(假设为abc) abc 如果出现下面的字符: Welcome to the MySQL monitor. Commonds end with ; or \g. Your MySQL connection id is 1 to server version: 4.1.7-nt Type 'help;' or '\h' for help. Type '\c' to clear the buffer. mysql> 那么,我们的Mysql数据库就安装成功了!下面开始安装PHP了。
4. 安装PHP Php-5.0.2-Win32.zip是一个ZIP压缩文件,解压里面的文件到D:\Jampot\Php5,然后打开PHP5目录,你会发现有一个叫做"php.ini-dist"的文件,这就是PHP的配置文件了,你需要把它改名成"php.ini",然后复制到Windows目录下,将D:\Jampot\PHP5目录下的" php5apache2.dll"文件复制到D:\Jampot\Aphache2\bin目录下。 打开php.ini文件,做如下的修改: 找到extension_dir = "./" 改为extension_dir = " D:/Jampot/Php5/ext" 找到;session.save_path = "/tmp"将';'去掉 设置你保存session的目录,如session.save_path = " D:/Jampot/Php5/session_temp"; 编辑Apache2\conf\httpd.conf文件: 在文件的最后面加上两句: LoadModule php5_module bin/php5apache2.dll AddType application/x-httpd-php .php .php3 PHPIniDir " D:/Jampot/Php5" 写一最简单的php程序测试: <?php phpinfo(); ?> 命名为info.php存入D:\Jampot\www下,然后地址栏内敲入http://localhost/info.php应该显示php和apache2的相关信息了,现在可以使用PHP了,但我们还要让PHP支持mysql才行,打开php.ini文件,做如下的修改: 找到;extension=php_mysql.dll将';'去掉改为extension=php_mysql.dll 好了,保存,重新启动apache,写个程序测试一下。 <?php $link=mysql_connect('localhost','username','password'); if(!$link) echo "fail"; else echo "success"; mysql_close(); ?> 如果运行后出现“success”,那么就说明你的PHP能使用MYSQL数据库了,到现在为止,我们的服务器已经算配置一半,它支持PHP语言、MYSQL数据库,休息一下。
5. 安装phpMyAdmin 解压phpMyAdmin-2.6.0.zip到D:\Jampot\phpMyAdmin2_6,修改目录内的config.inc.php文件: 设置$cfg['PmaAbsoluteUri']为http://localhost/phpMyAdmin 设置$cfg['blowfish_secret']='admin' 设置$cfg['Servers']['$i']['auth_type']='cookie' 设置$cfg['Servers']['$i']['user']为MYSQL用户名 设置$cfg['Servers']['$i']['password']为MYSQL用户口令 修改Apache内的httpd.conf文件,在最下面加以下语句: php_admin_flag engine on php_admin_flag safe_mode off Alias /phpMyAdmin "D:/Jampot/phpMyAdmin2_6" <Directory "D:/Jampot/phpMyAdmin2_6"> DirectoryIndex index.php Options Indexes MultiViews AllowOverride None Order allow,deny Allow from all php_admin_flag engine on php_admin_flag safe_mode off php_admin_value open_basedir none php_admin_value open_basedir "D:/Jampot/phpMyAdmin2_6" </Directory> 注意:在修改的时候要注意大小写!
6. 安装Tomcat 其实,在前面的过程中,并没有使用Jdk,之所以先安装它是因为笔者的喜爱,但现在开始,我们就使用Jdk了。运行tomcat-5.0.30.exe安装文件,在windows下一路点"确定"就行了,比较简单,安装目录为D:\Jampot\Tomcat5,下面设置环境变量: 添加变量TOMCAT_HOME,变量值为:D:\Jampot\Tomcat5 修改path变量,添加D:\Jampot\Tomcat5\bin 重新启动后,tomcat会自动启动.在IE中输入http://localhost:8080/,然后就可以看到tomcat的主页。这样就安装好了Tomat,写一个jsp文件测试一下。 <html> <hl>JSP test <hr> <% out.println("This is a jsp page!"); %> </html> 将文件存为jTest.jsp,放到D:\Jampot\Tomcat5\webapps\ROOT目录里。然后在IE中输入http://localhost:8080/jTest.jsp,看到了吗? 我们现在有两个问题要解决,一是和Aache服务器合并到一起;二是让JSP能连接MYSQL数据库。
第一步,合并Aache服务器。 Tomcat只是一个用来解析*.jsp文件的容器,它不是服务器,其解析静态htm/html文件的能力远远不如apache,整合后在同一个端口使apache来解析静态网页,而遇到*.jsp网页时,交由tomcat来解析. 1) 把mod_jk_2.0.46.dll文件复制到Apache2根目录bin文件夹下。 2) 修改Apache目录下的httpd.conf文件,在该文件最后添加以下语句: #------------------------------------------ #Connecting to tomcat using ajp13 LoadModule jk_module bin/mod_jk_2.0.46.dll JkWorkersFile "D:/Jampot/Tomcat5/conf/workers.properties" JkMount /servlet/* ajp13 |