<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0">
<channel>
<title><![CDATA[虫虫的blog  SINCE2004]]></title> 
<link>http://www.zhenghe.biz/index.php</link> 
<description><![CDATA[人生幻灯片  -   前半生(身)，不要怕；后半生(身)，不要悔！]]></description> 
<language>zh-cn</language> 
<copyright><![CDATA[虫虫的blog  SINCE2004]]></copyright>
<item>
<link>http://www.zhenghe.biz/read.php/.htm</link>
<title><![CDATA[在Linux上架设支持JSP+PHP的Web服务器]]></title> 
<author>网络毛毛虫 &lt;admin@yourname.com&gt;</author>
<category><![CDATA[技术文章]]></category>
<pubDate>Fri, 05 Nov 2004 16:12:10 +0000</pubDate> 
<guid>http://www.zhenghe.biz/read.php/.htm</guid> 
<description>
<![CDATA[ 
	近年来Linux在服务器市场占有比例日渐攀升，除了缘于Linux的免费和安全性之外，还因为Linux上的应用服务日益丰富。大部分常见的服务都在Linux上有了较好的解决方案。而对于Intenet上应用最广泛的Web服务来说，Linux的表现就更为出色。谁也无法说 清Internet上究竟有多少个网站，但在众多网站中，采用PHP和JSP开发的网站无疑占居了极大的市场份额。下面就介绍一下如何在Linux上架设支持JSP+PHP+MySQL的Web服务器。<br/><br/>　　对于Web服务，apache无疑是首选。数据库方面选用MySQL，这对于一般应用也够了，当然Linux下也可以安装oracle、DB2等大型数据库，可是它们费用昂贵。至于对于开发语言的支持，JSP和PHP无疑是当前最主流和应用最广泛的web开发语言了。所有这些软件我们可以从以下网站上找到：<br/><br/>　　Resin：http://www.caucho.com/<br/>　　JDK：http://java.sun.com/<br/>　　Apache：http://www.apache.org<br/>　　MySQL：http://www.mysql.com<br/>　　PHP：http://www.php.net<br/>　　MM.MySQL：http://mmmysql.sourceforge.net/<br/><br/>　　从以上网站下载对应的软件，笔者下载的软件如下：<br/><br/>　　mysql-4.0.15.tar.gz<br/>　　apache_1.3.28.tar.gz<br/>　　php-4.3.3.tar.gz<br/>　　resin-3.0.3.tar.gz<br/>　　mysql-connector-java-3.1.0-alpha.tar.gz<br/>　　j2sdk-1_4_2_01-linux-i586.bin<br/><br/>　　一、安装MySQL<br/><br/>　　MySQL的安装比较简单，但是编译过程可能有点长，具体步骤如下：<br/><br/>　　# tar -xzpvf mysql-4.0.15.tar.gz<br/>　　# adduser &nbsp;-s /bin/false mysql<br/>　　# ./configure &nbsp;--prefix=/usr/local/terry_yu/mysql --enable-assembler<br/>--with-innodb --with-charset=gb2312<br/>　　# make<br/>　　# make install<br/>　　# /usr/local/terry_yu/mysql/bin/mysql_install_db<br/>　　# chown -R root /usr/local/terry_yu/mysql/<br/>　　# chown -R mysql /usr/local/terry_yu/mysql/var<br/>　　# chgrp -R mysql /usr/local/terry_yu/mysql/<br/>　　# /usr/local/terry_yu/mysql/bin/mysql_install_db<br/><br/>　　修改/etc/ld.so.conf，在最后加入以下一行：<br/><br/>　　/usr/local/terry_yu/mysql/lib/mysql/lib<br/> <br/>　　然后执行以下命令：<br/><br/>　　# ldconfig<br/><br/>　　用以下命令启动MySQL<br/><br/>　　/usr/local/terry_yu/mysql/bin/mysqld_safe &amp;<br/><br/>　　用以下命令修改MySQL的root密码：<br/><br/>　　/usr/local/terry_yu/mysql/bin/mysqladmin -uroot password abcdefg<br/><br/>　　用以下命令可以进入MySQL的命令行方式：<br/><br/>　　[root@terry root]# /usr/local/terry_yu/mysql/bin/mysql -uroot -p<br/>　　Enter password:<br/>　　Welcome to the MySQL monitor. &nbsp;Commands end with ； or \g.<br/>　　Your MySQL connection id is 1 to server version: 4.0.15<br/><br/>　　Type 'help；' or '\h' for help. Type '\c' to clear the buffer.<br/><br/>　　mysql&gt; quit<br/>　　Bye<br/><br/>　　出现以上信息表示MySQL已经成功运行了。<br/><br/>　　二、安装JDK<br/><br/>　　# chmod 755 j2sdk-1_4_2_01-linux-i586.bin<br/>　　# ./j2sdk-1_4_2_01-linux-i586.bin<br/>　　# mv j2sdk1.4.2_01/ /usr/local/terry_yu/<br/>　　# cd /usr/local/terry_yu/<br/>　　# ln -s j2sdk1.4.2_01/ jdk<br/>　　# ln -s jdk/jre/ jre<br/><br/>　　# vi /etc/profile<br/>　　JAVA_HOME=/usr/local/terry_yu/jdk<br/>　　RESIN_HOME=/usr/local/terry_yu/resin<br/>　　CLASSPATH=.:../$JAVA_HOME/lib:$JAVA_HOME/jre/lib:$RESIN_HOME/lib:/usr/　　local/terry_yu/jdbc<br/>　　PATH=$PATH:$JAVA_HOME/bin:$JAVA_HOME/jre/bin<br/><br/>　　退出当前登录的环境，重新登录，这样刚刚设定的环境变量就会生效，然后用如下命令测试：<br/><br/>　　[root@terry root]# java -version<br/>　　java version &quot;1.4.2_01&quot;<br/>　　Java（TM） 2 Runtime Environment, Standard Edition （build 1.4.2_01-b06）<br/>　　Java HotSpot（TM） Client VM （build 1.4.2_01-b06, mixed mode）<br/><br/>　　看到类似信息就表示JDK环境已经好了。其实在上面的/etc/profile中，我们不仅仅设置了JDK的环境变量，还一并设置了Resin和JDBC的环境变量，这些都是后面安装Resin所必需的设定。<br/><br/>　　三、安装MySQL的JDBC<br/><br/>　　MySQL的JDBC的相关环境变量已经在前面设置好了，所以余下的只是按以下命令安装：<br/><br/>　　# tar &nbsp;-xzpvf mysql-connector-java-3.1.0-alpha.tar.gz<br/>　　# mv mysql-connector-java-3.1.0-alpha /usr/local/terry_yu/<br/>　　# cd /usr/local/terry_yu/<br/>　　# ln -s mysql-connector-java-3.1.0-alpha/ jdbc<br/><br/>　　四、安装Apache<br/><br/>　　http://apache.linuxforum.net/dist/httpd/apache_1.3.28.tar.gz<br/><br/>　　需要注意的是,编译apache时候必须加入了DSO支持,如果没有,请加入 --enable-module=so 选项重新编译apache<br/><br/>　　# tar -xzpvf apache_1.3.28.tar.gz<br/>　　# cd apache_1.3.28/<br/>　　# ./configure --prefix=/usr/local/terry_yu/apache --enable-module=most<br/>--enable-shared=max<br/>　　# make<br/>　　# make install<br/><br/>　　察看编译进apache的模块：<br/><br/>　　#/usr/local/terry_yu/apache/bin/httpd -l<br/>　　Compiled-in modules:<br/>　　http_core.c<br/>　　mod_so.c<br/><br/>　　看到以上的信息表明apache支持DSO方式了。这样就可以用DSO的方式把php和resin的模块加进来。<br/><br/>　　五、安装PHP<br/><br/>　　安装PHP比较简单，我们先装PHP。<br/><br/>　　# tar -xzpvf php-4.3.3.tar.gz<br/>　　# cd php-4.3.3/<br/>　　# ./configure --with-mysql=/usr/local/terry_yu/mysql<br/>　　--with-apxs=/usr/local/terry_yu/apache/bin/apxs<br/>　　# make<br/>　　# make install<br/>　　# cp php.ini-dist /usr/local/lib/php.ini<br/><br/>　　编辑PHP的配置文件是/usr/local/lib/php.ini，将其中的register_globals变量修改成On，默认是Off的。需要将它改成On。否则会出现php不能直接读不到post或get的数据的现象。<br/><br/>　　编辑Apache的配置文件/usr/local/terry_yu/apache/conf/httpd.conf，在文件结尾加上以下一行：<br/><br/>　　AddType application/x-httpd-php .php .php3<br/><br/>　　启动apache： <br/><br/>　　# /usr/local/terry_yu/apache/bin/apachectl start<br/><br/>　　然后可以用一个简单的php文件来测试PHP的安装，这个简单的PHP文件包含下列一行：<br/><br/>　　&lt;? phpinfo（）；?&gt;<br/><br/>　　将其保存为/usr/local/terry_yu/apache/htdocs/info.php，然后在浏览器中浏览，如果观看到以显示有“PHP Version4.3.3”标题的页面就表示整合PHP与Apache成功了。而且在这个页面中可以看到与PHP相关的选项，其中应该有关于MySQL的子项，这表明PHP已经内置了对MySQL的支持了。这样就表示PHP+MySQL+Apache的环境已经成功了，接下来是安装Resin来支持JSP环境。<br/><br/>　　六.安装Resin<br/><br/>　　http://www.caucho.com/download/resin-3.0.3.tar.gz<br/><br/>　　下载的resin的安装包解开后应该可以直接单独运行的。笔者将其解开后放到/usr/local/terry_yu目录下<br/><br/>　　# tar -xzpvf resin-3.0.3.tar.gz<br/>　　# mv resin-3.0.3 /usr/local/terry_yu/<br/>　　# cd /usr/local/terry_yu/<br/>　　# ln -s resin-3.0.3/ resin<br/><br/>　　启动resin<br/>　　# /usr/local/terry_yu/resin/bin/httpd.sh start<br/><br/>　　如果之前安装JDK时设置好了相关的环境变量，就能够从http://localhost:8080/上能看到resin的页面，这也就表示单独的resin运行成功了。然后，为了整合resin和apache，我们需要重新编译一下，以生成mod_caucho给Apache调用。<br/><br/>　　# cd /usr/local/terry_yu/resin<br/>　　# ./configure --with-apache=/usr/local/terry_yu/apache <br/>　　# make<br/>　　# make install<br/><br/>　　修改/usr/local/terry_yu/resin/conf/resin.conf，大约在第159行（安装的resin版本不同，配置文件的内容可能有所不同），将&lt;document-directory&gt;修改成自己的apache的DocumentRoot的值。<br/><br/>　　&lt;resin xmlns=http://caucho.com/ns/resin&gt;<br/>　　　&lt;server&gt;<br/>　　　　&lt;host id=&quot;&quot;&gt;<br/> &nbsp; &nbsp; <br/>　　&lt;document-directory&gt;/usr/local/terry_yu/apache/htdocs&lt;/document-directory&gt; ##这里修改成/usr/local/terry_yu/apache/htdocs<br/><br/>　　　　　...<br/>　　　　&lt;/host&gt;<br/>　　　&lt;/server&gt;<br/>　　&lt;/resin&gt;<br/><br/>　　修改/usr/local/terry_yu/apache/conf/httpd.conf，在编译resin时，安装程序已经修改过httpd.conf，不过还不完全正确，应该改成类似以下的配置，如果你完全按本文进行的安装可以直接复制这些内容：<br/><br/>　　LoadModule caucho_module libexec/mod_caucho.so<br/>　　AddModule mod_caucho.c<br/><br/>　　&lt;IfModule mod_caucho.c&gt;<br/>　　　ResinConfigServer localhost 6802<br/>　　&lt;Location /caucho-status&gt;<br/>　　　SetHandler caucho-status<br/>　　&lt;/Location&gt;<br/>　&lt;/IfModule&gt;<br/>　　修改完后，重新启动resin后生效：<br/><br/>　　/usr/local/terry_yu/resin/bin/httpd.sh restart<br/>　　/usr/local/terry_yu/apache/bin/apachectl restart<br/><br/>　　通过浏览器去访问http://localhost/caucho-status/，如果出现以下页面刚表示resin和apache已经成功整合了。<br/><br/><br/><br/><br/>然后再测试一下JSP对数据库的访问，在/usr/local/apache/htdocs/下面用jsp写一个简单的jsp文件来连接本机的MySQL数据库：<br/><br/>　　vi /usr/local/terry_yu/apache/htdocs/testdb.jsp<br/><br/>　　输入以下内容，可以直接粘贴：<br/><br/>　　&lt;html&gt;<br/>　　&lt;head&gt;<br/>　　&lt;title&gt;Test JDBC For MySQL&lt;/title&gt;<br/>　　&lt;/head&gt;<br/>　　&lt;body&gt;<br/>　　&lt;%@ page contentType=&quot;text/html；charset=gb2312&quot; %&gt;<br/>　　&lt;%<br/>　　 Class.forName（&quot;com.mysql.jdbc.Driver&quot;）.newInstance（）；<br/>　　 java.sql.Connection conn；<br/>　　 conn =<br/>　　java.sql.DriverManager.getConnection（&quot;jdbc:mysql://localhost/mysql?user=root&amp;password=abcdefg&quot;）；<br/>　　%&gt;<br/>　　&lt;/body&gt;<br/>　　&lt;/html&gt;<br/><br/>　　通过浏览器去访问http://localhost/testdb，如果看到了一个没有任何错误信息的空白页面，就表示jsp连接本机的MySQL数据库成功了，至此我们就完成了一个支持JSP+PHP+MySQL的Web服务器。<br/><br/>　　注：以上所有安装都是在Red Hat Linux9.0上完成的，所使用软件也均为目前（2003年9月）最新的版本。<br/><br/>　　本文介绍了如何在Linux上架设同时支持JSP和PHP的Web Server，演示了MySQL、JDK、JDBC、Apache、PHP、Resin的安装和简单测试过程。<br/>
]]>
</description>
</item><item>
<link>http://www.zhenghe.biz/read.php/.htm#blogcomment</link>
<title><![CDATA[[评论] 在Linux上架设支持JSP+PHP的Web服务器]]></title> 
<author> &lt;user@domain.com&gt;</author>
<category><![CDATA[评论]]></category>
<pubDate>Thu, 01 Jan 1970 00:00:00 +0000</pubDate> 
<guid>http://www.zhenghe.biz/read.php/.htm#blogcomment</guid> 
<description>
<![CDATA[ 
	
]]>
</description>
</item>
</channel>
</rss>