Windows上安装Apache2、PHP5、MySQL5及与Resin配合实现多系统之整合
程序员文章站
2022-03-06 15:39:15
谁知坎坷颇多,故觉得有必要记录下来,一来为了备忘,二来希望对后来者有所助益,避免走不必要的弯路。本人的安装操作过程也参考了很多前辈们的经验,在此一并表示感谢。 另外在进入正...
谁知坎坷颇多,故觉得有必要记录下来,一来为了备忘,二来希望对后来者有所助益,避免走不必要的弯路。本人的安装操作过程也参考了很多前辈们的经验,在此一并表示感谢。
另外在进入正题前,再说几句题外话。下文的安装整合在apache2.2、php5、mysql5、resin-3.1.10上测试通过,但考虑到每个人电脑本身运行环境的差异,并不能保证按照笔者的流程可以顺利在各个电脑上安装运行。因此按照此流程安装的朋友遇到问题时,请自行通过google、百度解决。因为别人文章里言之凿凿顺利完成的安装,在笔者电脑里却就是无法运行,出的问题也是稀奇古怪,毫无道理可言。以下流程笔者走了不下10余次,其间磕磕碰碰、反反复复、装装卸卸、修修改改,不由感叹程序员工作之烦复琐碎,心想如能以程序员执着之精神、顽强之意志、坚韧之毅力来做其他事情,诸事皆成!
好了,下面进入正题。
一、安装apache 2.2.14
1、运行安装程序,一路“next”到“server information”,前两处有域名填域名,无域名可填localhost(也可随意填写),其余接受默认选项即可,按“next”继续。
2、选择安装类型,如果需要更改默认程序安装目录的话,选择custom自定义安装,否则选typical进行默认安装。此处笔者选择custom,按“next”继续。
3、出现选择安装选项界面,点选“change...”指定安装目录,按“next”继续。
4、确认安装选项无误后,按“install”开始安装。安装向导成功完成时,右下角状态栏会出现一个新的小图标,设置成“start”状态表示apache服务已经开始运行,按“finish”结束。
5、在浏览器输入http://localhost/,如果显示“it works!”,表示apache已能正常工作。如果没有显示,或者提示出错,或者apache小图标的绿灯不亮,则可能是系统80端口被占用。这时需要查找出错原因,一般情况可能是iis、迅雷等软件占用了80端口,关闭该软件即可。
二、安装php-5.2.5
1、将php的压缩包解压到指定文件夹中,笔者将其解压到d:\dev\php。
2、将其中的php.ini-recommended文件改名为php.ini,同时修改其内容:
(1);default_charset = "iso-8859-1"改为:default_charset ="utf-8";
(2)extension_dir = "./" 改为:extension_dir =" d:/dev/php/ext";
(3)找到memory_limit = 128m,修改数值可限定php脚本最多占用的内存大小;
(4)根据需求选择要加载的模块,方法是去掉前面的;号,通常可加载如下的模块:
extension=php_gd2.dll
extension=php_mbstring.dll
extension=php_mhash.dll
extension=php_mime_magic.dll
extension=php_ming.dll
extension=php_mysql.dll
extension=php_xmlrpc.dll
3、将php安装路径添加到windows的系统路径中,具体方法是:在“我的电脑”上右键点击选择“属性”,在“系统属性”窗口中按“高级”标签,点选“环境变量”,在“系统变量”下找到“path”变量,将“;d:\dev\php;d:\dev\php\ext”添加到原有值的最后面(具体路径根据真实安装路径修改),修改之后重启生效。
4、对apache的配置文件httpd.conf作如下修改:
(1)找到documentroot "x:/xxx/htdocs" 和 <directory "x:/xxx/htdocs">(引号中地址根据个人安装路径填写),将“x:/xxx/htdocs”改为网站所存放的文件夹,笔者在此将其改为documentroot "d:/www" 和 <directory "d:/www">
(2)找到loadmodule,在下面添加
loadmodule php5_module "d:/dev/php/php5apache2_2.dll"
phpinidir "d:/dev/php"
(3)找到<ifmodule dir_module> directoryindex index.html </ifmodule>,将其改为:
<ifmodule dir_module>
directoryindex index.php index.phtml index.html index.jsp
</ifmodule>
(4)找到“addtype application/x-gzip .gz .tgz”, 在下面增加:
addtype application/x-httpd-php .php .phtml
addtype application/x-httpd-php .html
5、在d:\www中创建index.php文件,内容如下:
<?php
phpinfo();
?>
重启apache,在浏览器中输入http://localhost/ ,如果显示php的相关信息的话,则表示apache已支持php。
三、安装mysql-5.0.41
1、运行安装程序,选择“custom”方式,将mysql的安装路径改为d:\dev\mysql,然后一路“next”。
2、安装完成后出现提示“configure the mysql server now”,将其勾选后按“finish”。
3、在启动的mysql配置向导中,选择“detailed configuration”配置方式,按“next”继续。
4、选择服务器类型,“developer machine(开发测试类型,mysql占用很少资源)”、“server machine(服务器类型,mysql占用较多资源)”、“dedicated mysql server machine(专门的数据库服务器,mysql占用所有可用资源)”,根据自己的需要进行选择。笔者主要是为了测试程序,这里选“developer machine”,按“next”继续。
5、选择mysql数据库的用途,“multifunctional database(通用多功能型)”、“transactional database only(专注事务处理型)”、“non-transactional database only(非事务处理型)”,根据自己的用途进行选择。笔者选择“multifunctional database”,按“next”继续。
6、对innodb tablespace进行配置,就是为innodb 数据库文件选择存储空间。笔者此处使用默认位置,按“next”继续。
7、对mysql大概的连接数进行配置,“decision support(dss)/olap(20个左右)”、“online transaction processing(oltp)(500个左右)”、“manual setting(手动设置个数)”。笔者此处选择“decision support(dss)/olap”,仅为调试程序之用,按“next”继续。
8、勾选启用tcp/ip连接,默认端口3306,按“next”继续。
9、对mysql数据库默认编码进行设置,第一是西文编码,第二是utf8编码,第三个是手工配置。笔者选第三个,并在character set处选择“gbk”,按 “next”继续。
10、将mysql设置为windows服务,指定service name(服务标识名称),并将mysql的bin目录加入到windows path中(加入后将可在dos窗口内直接使用bin目录中的命令,而不再需要输入完整地址)。笔者此处全部勾选,service name默认不变,按“next”继续。
11、设置root用户密码(默认为空),在“new root password”中填写密码(如果是重装并且之前已经设置了密码,此处更改密码可能会出错,请留空并将“modify security settings”前面的勾去掉,安装配置完成后另行修改密码)。另外可勾选“enable root access from remote machines(是否允许root用户远程登陆)”,而“create an anonymous account(新建一个匿名用户)”,一般不用勾选。设置完毕,按“next”继续。
12、确认设置无误后。按“execute”使设置生效。设置完毕,按“finish”结束。
13、在d:\www中创建testconn.php文件,内容如下:(**为root用户密码):
<?php
mysql_connect("localhost", "root", "**") or die(mysql_error());
echo "connected to mysql<br />";
?>
在浏览器中输入http://localhost/testconn.php,如果显示connected to mysql,则表明与mysql连接成功。
四、安装phpmyadmin-3.2.5
1、将phpmyadmin压缩包解压在指定文件夹中,笔者将其解压到d:\www\phpmyadmin,并将libraries目录中的config.default.php复制到phpmyadmin目录,重命名为config.inc.php。
2、对config.inc.php文件作如下修改:
(1)将 $cfg['servers'][$i]['auth_type'] = 'config'; 改为:
$cfg['servers'][$i]['auth_type']='http';
(2)将 $cfg['servers'][$i]['password'] = '' 改为:
$cfg['servers'][$i]['password'] = '**'(**为mysql的密码)
3、打开apache配置文件httpd.conf,找到 # alias /webpath /full/filesystem/path,在下面添加一下代码(具体路径根据情况修改):
alias /phpmyadmin "d:/www/phpmyadmin"
<directory "d:/www/phpmyadmin">
allowoverride none
options none
order allow,deny
allow from all
</directory>
重启apache,在浏览器中打开http://localhost/phpmyadmin。在出现的对话框中输入管理员帐号(root)和对应密码,如果顺利登录并打开phpmyadmin界面,则表明已安装完成。
五、安装zendoptimizer-3.3.3
zendoptimizer的安装较为简单,只需按提示步骤选择安装路径、勾选apache2.x以及设置项目所在的根目录即可。安装完成后,在浏览器中输入http://localhost/可以看到zend 的信息。
六、整合apache与resin并配置虚拟主机
笔者电脑在resin中已存在两个工程,假设其中一个名为tieba,另一个名为zhidao,现需再整合phpwind论坛系统,并实现分别可以用如下网址来访问对应的系统:tieba.aaa.com、zhidao.aaa.com、bbs.aaa.com。
1、修改c:\windows\system32\drivers\etc目录中的hosts文件,在其中添加:
127.0.0.1 tieba.aaa.com
127.0.0.1 zhidao.aaa.com
127.0.0.1 bbs.aaa.com
2、进入resin安装目录的win32子目录,运行setup.exe。在“resin setup”窗口中勾选apache复选框,并在后面的输入框中填写apache的安装目录,按“ok”确认。
3、对apache的配置文件httpd.conf作如下修改:
(1)loadmodule caucho_module "d:/dev/resin-3.1.10/win32/apache-2.0/mod_caucho.dll"
将其修改为:
loadmodule caucho_module "d:/dev/resin-3.1.10/win32/apache-2.2/mod_caucho.dll"
(2)将#servername localhost:80前面的#号去掉。
(3)将<directory " d:/www ">修改为<directory />。
(4)将options indexes followsymlinks中的indexes去掉,不显示目录列表。
(5)将#include conf/extra/httpd-vhosts.conf前面的#号去掉,打开虚拟主机配置。
4、对d:\dev\apache2.2\conf\extra中的httpd-vhosts.conf文件作如下修改:
(1)将namevirtualhost *:80改为namevirtualhost localhost:80,如果正式启用internet服务可将localhost换成服务器的ip地址。
(2)开始配置虚拟主机,一个域名对应一个<virtualhost>:
<virtualhost bbs.aaa.com:80>
servername bbs.aaa.com
documentroot d:/www/phpwind
</virtualhost>
<virtualhost tieba.aaa.com:80>
servername tieba.aaa.com
documentroot d:/dev/resin-3.1.10/webapps/tieba
resinconfigserver 127.0.0.1 6800
</virtualhost>
<virtualhost zhidao.aaa.com:80>
servername zhidao.aaa.com
documentroot d:/dev/resin-3.1.10/webapps/zhidao
resinconfigserver 127.0.0.1 6800
</virtualhost>
5、对resin的配置文件resin.conf作如下修改:
(1)由于已不需要resin直接提供web服务,可将<http address="*" port="8080"/>注释掉,只需保证<server id="" address="127.0.0.1" port="6800"/>有效监听本地端口即可。这里需要注意的是,如果apache与resin不在同一台服务器上的话,此处的127.0.0.1以及上面提到的httpd-vhosts.conf文件中127.0.0.1都应改成resin所处服务器的ip地址。
(2)如下所示配置host:
<host id=" tieba.aaa.com " root-directory=".">
<web-app id="/" root-directory=" d:/dev/resin-3.1.10/webapps/tieba "/>
<stderr-log path='d:/dev/resin-3.1.10/logs/stderr.log' rollover-period='1w'/>
<stdout-log path='d:/dev/resin-3.1.10/logs/stdout.log' rollover-period='1w'/>
</host>
<host id=" zhidao.aaa.com" root-directory=".">
<web-app id="/" root-directory=" d:/dev/resin-3.1.10/webapps/zhidao"/>
<stderr-log path='d:/dev/resin-3.1.10/logs/stderr.log' rollover-period='1w'/>
<stdout-log path='d:/dev/resin-3.1.10/logs/stdout.log' rollover-period='1w'/>
</host>
重启apache与resin,现在可以直接使用tieba.aaa.com、zhidao.aaa.com、bbs.aaa.com这三个域名来访问对应的工程了。
七、利用apache rewrite规则实现url伪静态
在实现apache与resin的整合之后,由于apache对带html的url优先进行拦截处理,就可能导致原有为优化网站url而在resin系统中进行的伪静态设置失效,这时就需要通过apache rewrite规则进行重新设置。此处以tieba工程中的url为例进行说明,操作步骤如下:
1、在httpd.conf中,找到#loadmodule rewrite_module modules/mod_rewrite.so,将前面的#去掉。
2、在httpd-vhosts.conf中,找到<virtualhost tieba.aaa.com:80>,将其修改为:
<virtualhost tieba.aaa.com:80>
servername tieba.aaa.com
documentroot d:/dev/resin-3.1.10/webapps/tieba
resinconfigserver 127.0.0.1 6800
<ifmodule mod_rewrite.c>
rewriteengine on
rewriterule ^/tie/(\d+).html$ /do/viewthread?id=$1 [l,pt]
</ifmodule>
</virtualhost>
这样就可以实现将类似于http://tieba.aaa.com/do/viewthread?id=77的网址伪静态为http://tieba.aaa.com/tie/77.html了。此处需注意的是,在规则后面必须写[l,pt],不然会将/do/viewthread?id=$1视为目录结构进行访问,而不交由resin进行解析执行。笔者被此处纠缠较长时间,后来者谨记。
好了,从上至下这样一个流程走来,完成了在windows中对apache2、php5、mysql5、phpmyadmin、zendoptimizer的安装与配置,以及实现了apache与resin整合、虚拟主机配置和url伪静态的处理。接下来,笔者有空会来总结一下如何将oracle中的数据快速便利的导入到mysql中,以及如何将已有的jsp网站与phpwind论坛整合实现同步登入与同步退出的功能。
另外在进入正题前,再说几句题外话。下文的安装整合在apache2.2、php5、mysql5、resin-3.1.10上测试通过,但考虑到每个人电脑本身运行环境的差异,并不能保证按照笔者的流程可以顺利在各个电脑上安装运行。因此按照此流程安装的朋友遇到问题时,请自行通过google、百度解决。因为别人文章里言之凿凿顺利完成的安装,在笔者电脑里却就是无法运行,出的问题也是稀奇古怪,毫无道理可言。以下流程笔者走了不下10余次,其间磕磕碰碰、反反复复、装装卸卸、修修改改,不由感叹程序员工作之烦复琐碎,心想如能以程序员执着之精神、顽强之意志、坚韧之毅力来做其他事情,诸事皆成!
好了,下面进入正题。
一、安装apache 2.2.14
1、运行安装程序,一路“next”到“server information”,前两处有域名填域名,无域名可填localhost(也可随意填写),其余接受默认选项即可,按“next”继续。
2、选择安装类型,如果需要更改默认程序安装目录的话,选择custom自定义安装,否则选typical进行默认安装。此处笔者选择custom,按“next”继续。
3、出现选择安装选项界面,点选“change...”指定安装目录,按“next”继续。
4、确认安装选项无误后,按“install”开始安装。安装向导成功完成时,右下角状态栏会出现一个新的小图标,设置成“start”状态表示apache服务已经开始运行,按“finish”结束。
5、在浏览器输入http://localhost/,如果显示“it works!”,表示apache已能正常工作。如果没有显示,或者提示出错,或者apache小图标的绿灯不亮,则可能是系统80端口被占用。这时需要查找出错原因,一般情况可能是iis、迅雷等软件占用了80端口,关闭该软件即可。
二、安装php-5.2.5
1、将php的压缩包解压到指定文件夹中,笔者将其解压到d:\dev\php。
2、将其中的php.ini-recommended文件改名为php.ini,同时修改其内容:
(1);default_charset = "iso-8859-1"改为:default_charset ="utf-8";
(2)extension_dir = "./" 改为:extension_dir =" d:/dev/php/ext";
(3)找到memory_limit = 128m,修改数值可限定php脚本最多占用的内存大小;
(4)根据需求选择要加载的模块,方法是去掉前面的;号,通常可加载如下的模块:
extension=php_gd2.dll
extension=php_mbstring.dll
extension=php_mhash.dll
extension=php_mime_magic.dll
extension=php_ming.dll
extension=php_mysql.dll
extension=php_xmlrpc.dll
3、将php安装路径添加到windows的系统路径中,具体方法是:在“我的电脑”上右键点击选择“属性”,在“系统属性”窗口中按“高级”标签,点选“环境变量”,在“系统变量”下找到“path”变量,将“;d:\dev\php;d:\dev\php\ext”添加到原有值的最后面(具体路径根据真实安装路径修改),修改之后重启生效。
4、对apache的配置文件httpd.conf作如下修改:
(1)找到documentroot "x:/xxx/htdocs" 和 <directory "x:/xxx/htdocs">(引号中地址根据个人安装路径填写),将“x:/xxx/htdocs”改为网站所存放的文件夹,笔者在此将其改为documentroot "d:/www" 和 <directory "d:/www">
(2)找到loadmodule,在下面添加
loadmodule php5_module "d:/dev/php/php5apache2_2.dll"
phpinidir "d:/dev/php"
(3)找到<ifmodule dir_module> directoryindex index.html </ifmodule>,将其改为:
<ifmodule dir_module>
directoryindex index.php index.phtml index.html index.jsp
</ifmodule>
(4)找到“addtype application/x-gzip .gz .tgz”, 在下面增加:
addtype application/x-httpd-php .php .phtml
addtype application/x-httpd-php .html
5、在d:\www中创建index.php文件,内容如下:
<?php
phpinfo();
?>
重启apache,在浏览器中输入http://localhost/ ,如果显示php的相关信息的话,则表示apache已支持php。
三、安装mysql-5.0.41
1、运行安装程序,选择“custom”方式,将mysql的安装路径改为d:\dev\mysql,然后一路“next”。
2、安装完成后出现提示“configure the mysql server now”,将其勾选后按“finish”。
3、在启动的mysql配置向导中,选择“detailed configuration”配置方式,按“next”继续。
4、选择服务器类型,“developer machine(开发测试类型,mysql占用很少资源)”、“server machine(服务器类型,mysql占用较多资源)”、“dedicated mysql server machine(专门的数据库服务器,mysql占用所有可用资源)”,根据自己的需要进行选择。笔者主要是为了测试程序,这里选“developer machine”,按“next”继续。
5、选择mysql数据库的用途,“multifunctional database(通用多功能型)”、“transactional database only(专注事务处理型)”、“non-transactional database only(非事务处理型)”,根据自己的用途进行选择。笔者选择“multifunctional database”,按“next”继续。
6、对innodb tablespace进行配置,就是为innodb 数据库文件选择存储空间。笔者此处使用默认位置,按“next”继续。
7、对mysql大概的连接数进行配置,“decision support(dss)/olap(20个左右)”、“online transaction processing(oltp)(500个左右)”、“manual setting(手动设置个数)”。笔者此处选择“decision support(dss)/olap”,仅为调试程序之用,按“next”继续。
8、勾选启用tcp/ip连接,默认端口3306,按“next”继续。
9、对mysql数据库默认编码进行设置,第一是西文编码,第二是utf8编码,第三个是手工配置。笔者选第三个,并在character set处选择“gbk”,按 “next”继续。
10、将mysql设置为windows服务,指定service name(服务标识名称),并将mysql的bin目录加入到windows path中(加入后将可在dos窗口内直接使用bin目录中的命令,而不再需要输入完整地址)。笔者此处全部勾选,service name默认不变,按“next”继续。
11、设置root用户密码(默认为空),在“new root password”中填写密码(如果是重装并且之前已经设置了密码,此处更改密码可能会出错,请留空并将“modify security settings”前面的勾去掉,安装配置完成后另行修改密码)。另外可勾选“enable root access from remote machines(是否允许root用户远程登陆)”,而“create an anonymous account(新建一个匿名用户)”,一般不用勾选。设置完毕,按“next”继续。
12、确认设置无误后。按“execute”使设置生效。设置完毕,按“finish”结束。
13、在d:\www中创建testconn.php文件,内容如下:(**为root用户密码):
<?php
mysql_connect("localhost", "root", "**") or die(mysql_error());
echo "connected to mysql<br />";
?>
在浏览器中输入http://localhost/testconn.php,如果显示connected to mysql,则表明与mysql连接成功。
四、安装phpmyadmin-3.2.5
1、将phpmyadmin压缩包解压在指定文件夹中,笔者将其解压到d:\www\phpmyadmin,并将libraries目录中的config.default.php复制到phpmyadmin目录,重命名为config.inc.php。
2、对config.inc.php文件作如下修改:
(1)将 $cfg['servers'][$i]['auth_type'] = 'config'; 改为:
$cfg['servers'][$i]['auth_type']='http';
(2)将 $cfg['servers'][$i]['password'] = '' 改为:
$cfg['servers'][$i]['password'] = '**'(**为mysql的密码)
3、打开apache配置文件httpd.conf,找到 # alias /webpath /full/filesystem/path,在下面添加一下代码(具体路径根据情况修改):
alias /phpmyadmin "d:/www/phpmyadmin"
复制代码 代码如下:
<directory "d:/www/phpmyadmin">
allowoverride none
options none
order allow,deny
allow from all
</directory>
重启apache,在浏览器中打开http://localhost/phpmyadmin。在出现的对话框中输入管理员帐号(root)和对应密码,如果顺利登录并打开phpmyadmin界面,则表明已安装完成。
五、安装zendoptimizer-3.3.3
zendoptimizer的安装较为简单,只需按提示步骤选择安装路径、勾选apache2.x以及设置项目所在的根目录即可。安装完成后,在浏览器中输入http://localhost/可以看到zend 的信息。
六、整合apache与resin并配置虚拟主机
笔者电脑在resin中已存在两个工程,假设其中一个名为tieba,另一个名为zhidao,现需再整合phpwind论坛系统,并实现分别可以用如下网址来访问对应的系统:tieba.aaa.com、zhidao.aaa.com、bbs.aaa.com。
1、修改c:\windows\system32\drivers\etc目录中的hosts文件,在其中添加:
127.0.0.1 tieba.aaa.com
127.0.0.1 zhidao.aaa.com
127.0.0.1 bbs.aaa.com
2、进入resin安装目录的win32子目录,运行setup.exe。在“resin setup”窗口中勾选apache复选框,并在后面的输入框中填写apache的安装目录,按“ok”确认。
3、对apache的配置文件httpd.conf作如下修改:
(1)loadmodule caucho_module "d:/dev/resin-3.1.10/win32/apache-2.0/mod_caucho.dll"
将其修改为:
loadmodule caucho_module "d:/dev/resin-3.1.10/win32/apache-2.2/mod_caucho.dll"
(2)将#servername localhost:80前面的#号去掉。
(3)将<directory " d:/www ">修改为<directory />。
(4)将options indexes followsymlinks中的indexes去掉,不显示目录列表。
(5)将#include conf/extra/httpd-vhosts.conf前面的#号去掉,打开虚拟主机配置。
4、对d:\dev\apache2.2\conf\extra中的httpd-vhosts.conf文件作如下修改:
(1)将namevirtualhost *:80改为namevirtualhost localhost:80,如果正式启用internet服务可将localhost换成服务器的ip地址。
(2)开始配置虚拟主机,一个域名对应一个<virtualhost>:
复制代码 代码如下:
<virtualhost bbs.aaa.com:80>
servername bbs.aaa.com
documentroot d:/www/phpwind
</virtualhost>
<virtualhost tieba.aaa.com:80>
servername tieba.aaa.com
documentroot d:/dev/resin-3.1.10/webapps/tieba
resinconfigserver 127.0.0.1 6800
</virtualhost>
<virtualhost zhidao.aaa.com:80>
servername zhidao.aaa.com
documentroot d:/dev/resin-3.1.10/webapps/zhidao
resinconfigserver 127.0.0.1 6800
</virtualhost>
5、对resin的配置文件resin.conf作如下修改:
(1)由于已不需要resin直接提供web服务,可将<http address="*" port="8080"/>注释掉,只需保证<server id="" address="127.0.0.1" port="6800"/>有效监听本地端口即可。这里需要注意的是,如果apache与resin不在同一台服务器上的话,此处的127.0.0.1以及上面提到的httpd-vhosts.conf文件中127.0.0.1都应改成resin所处服务器的ip地址。
(2)如下所示配置host:
复制代码 代码如下:
<host id=" tieba.aaa.com " root-directory=".">
<web-app id="/" root-directory=" d:/dev/resin-3.1.10/webapps/tieba "/>
<stderr-log path='d:/dev/resin-3.1.10/logs/stderr.log' rollover-period='1w'/>
<stdout-log path='d:/dev/resin-3.1.10/logs/stdout.log' rollover-period='1w'/>
</host>
<host id=" zhidao.aaa.com" root-directory=".">
<web-app id="/" root-directory=" d:/dev/resin-3.1.10/webapps/zhidao"/>
<stderr-log path='d:/dev/resin-3.1.10/logs/stderr.log' rollover-period='1w'/>
<stdout-log path='d:/dev/resin-3.1.10/logs/stdout.log' rollover-period='1w'/>
</host>
重启apache与resin,现在可以直接使用tieba.aaa.com、zhidao.aaa.com、bbs.aaa.com这三个域名来访问对应的工程了。
七、利用apache rewrite规则实现url伪静态
在实现apache与resin的整合之后,由于apache对带html的url优先进行拦截处理,就可能导致原有为优化网站url而在resin系统中进行的伪静态设置失效,这时就需要通过apache rewrite规则进行重新设置。此处以tieba工程中的url为例进行说明,操作步骤如下:
1、在httpd.conf中,找到#loadmodule rewrite_module modules/mod_rewrite.so,将前面的#去掉。
2、在httpd-vhosts.conf中,找到<virtualhost tieba.aaa.com:80>,将其修改为:
复制代码 代码如下:
<virtualhost tieba.aaa.com:80>
servername tieba.aaa.com
documentroot d:/dev/resin-3.1.10/webapps/tieba
resinconfigserver 127.0.0.1 6800
<ifmodule mod_rewrite.c>
rewriteengine on
rewriterule ^/tie/(\d+).html$ /do/viewthread?id=$1 [l,pt]
</ifmodule>
</virtualhost>
这样就可以实现将类似于http://tieba.aaa.com/do/viewthread?id=77的网址伪静态为http://tieba.aaa.com/tie/77.html了。此处需注意的是,在规则后面必须写[l,pt],不然会将/do/viewthread?id=$1视为目录结构进行访问,而不交由resin进行解析执行。笔者被此处纠缠较长时间,后来者谨记。
好了,从上至下这样一个流程走来,完成了在windows中对apache2、php5、mysql5、phpmyadmin、zendoptimizer的安装与配置,以及实现了apache与resin整合、虚拟主机配置和url伪静态的处理。接下来,笔者有空会来总结一下如何将oracle中的数据快速便利的导入到mysql中,以及如何将已有的jsp网站与phpwind论坛整合实现同步登入与同步退出的功能。