Windows上安装Apache2、PHP5、MySQL5及与Resin配合实现多系统之整合

谁知坎坷颇多,故觉得有必要记录下来,一来为了备忘,二来希望对后来者有所助益,避免走不必要的弯路。本人的安装操作过程也参考了很多前辈们的经验,在此一并表示感谢。

另外在进入正题前,再说几句题外话。下文的安装整合在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论坛整合实现同步登入与同步退出的功能。

(0)

相关推荐

  • Windows上安装Apache2、PHP5、MySQL5及与Resin配合实现多系统之整合

    谁知坎坷颇多,故觉得有必要记录下来,一来为了备忘,二来希望对后来者有所助益,避免走不必要的弯路.本人的安装操作过程也参考了很多前辈们的经验,在此一并表示感谢. 另外在进入正题前,再说几句题外话.下文的安装整合在Apache2.2.PHP5.MySQL5.resin-3.1.10上测试通过,但考虑到每个人电脑本身运行环境的差异,并不能保证按照笔者的流程可以顺利在各个电脑上安装运行.因此按照此流程安装的朋友遇到问题时,请自行通过Google.百度解决.因为别人文章里言之凿凿顺利完成的安装,在笔者电脑

  • 快速在Windows上安装MySQL5.7压缩包

    本文给大家分享在Windows上安装MySQL5.7压缩包的方法,具体内容详情如下所示: 压缩包解压到指定路径下 E:\mysql\mysql-5.7.18-winx64 准备my.ini配置文件 # MySQL Server Instance Configuration File # --------------------------------------------------------------- # Generated by the MySQL Server Instance C

  • Windows中安装Apache2和PHP4权威指南

    Apache 2和PHP是创建交互式网站的流行方案,而且成本很低.在Windows中安装Apache 2是一件轻而易举的事情,但要使PHP 4与Apache 2配合无间地运行,就需要一定的技巧. 在PHP 4.3手册的Windows安装小节,没有解释如何让PHP与Apache 2配合使用,而有关Apache 2安装的小节缺失了你需要的大量信息.在网上公布的其他安装指南中,也包含了不少错误,使一些安装人员只好不断试验和犯错.例如,有些人甚至将PHP的DLL替换成其他PHP版本的DLL.OK,为了节

  • 在Windows中安装Apache2和PHP4的权威指南

    Apache 2和PHP是创建交互式网站的流行方案,而且成本很低.在Windows中安装Apache 2是一件轻而易举的事情,但要使PHP 4与Apache 2配合无间地运行,就需要一定的技巧. 转自:动态网制作指南 www.knowsky.com 在PHP 4.3手册的Windows安装小节,没有解释如何让PHP与Apache 2配合使用,而有关Apache 2安装的小节缺失了你需要的大量信息.在网上公布的其他安装指南中,也包含了不少错误,使一些安装人员只好不断试验和犯错.例如,有些人甚至将P

  • mysql 5.7.9 winx64在windows上安装遇到的问题

    mysql5.7.9版本以上在windwos上安装时会遇到无法启动但是没有任何报错的问题,那是因为5.7.9以上的版本在MySQL目录下会缺少data目录: Data目录下存储的是一些表文件,用来描述数据.结构等,data目录不能自建,必须自动生产,但是可以从正常版本拷过来 其实修改很简单,只要一条命令即可:#mysql --initialize 之后再次启动就成功了 MySQL安装好之后,正常情况下是没有密码的(除非自己添加),直接命令进去#mysql -uroot -p ,不用输入密码直接回

  • 在windows上安装不同(两个)版本的Mysql数据库的教程详解

    1.起因: 需要导入一个sql文件,发现死活导不进去.当执行到这一句时,就有问题.经过一番搜索,原来是我的数据库版本(原先Mysql版本5.5)低了,而支持该语句的版本应该是至少要5.7.那我索性就去Mysql官网去下载了个最新版本的(8.0.15). `create_time` datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP 2.过程: 那么问题来了:有两个解决方案.1.直接卸载掉5.5版本的Mysql,直接安装8.0.15版本的.2.在不卸

  • windows上安装Anaconda和python的教程详解

    一提到数字图像处理编程,可能大多数人就会想到matlab,但matlab也有自身的缺点: 1.不开源,价格贵 2.软件容量大.一般3G以上,高版本甚至达5G以上. 3.只能做研究,不易转化成软件. 因此,我们这里使用Python这个脚本语言来进行数字图像处理. 要使用Python,必须先安装python,一般是2.7版本以上,不管是在windows系统,还是Linux系统,安装都是非常简单的. 要使用python进行各种开发和科学计算,还需要安装对应的包.这和matlab非常相似,只是matla

  • 详解TensorFlow在windows上安装与简单示例

    本文介绍了详解TensorFlow在windows上安装与简单示例,分享给大家,具体如下: 安装说明 平台:目前可在Ubuntu.Mac OS.Windows上安装 版本:提供gpu版本.cpu版本 安装方式:pip方式.Anaconda方式 Tips: 在Windows上目前支持python3.5.x gpu版本需要cuda8,cudnn5.1 安装进度 2017/3/4进度: Anaconda 4.3(对应python3.6)正在安装,又删除了,一无所有了 2017/3/5进度: Anaco

  • Windows上安装tensorflow 详细教程(图文详解)

    一, 前言: 本次安装tensorflow是基于Python的,安装Python的过程不做说明(既然决定按,Python肯定要先了解啊):本次教程是windows下Anaconda安装Tensorflow的过程(cpu版,显卡不支持gpu版的...) 二, 安装环境: (tensorflow支持的系统是64位的,windows和linux,mac都需要64位) windows7(其实和windows版本没什么关系,我的是windows7,安装时参照的有windows10的讲解) Python3.

  • 解决windows上安装tensorflow时报错,“DLL load failed: 找不到指定的模块”的问题

    最近打算开始研究一下机器学习,今天在windows上装tensorflow花了点功夫,其实前面的步骤不难,只要依次装好python3.5,numpy,tensorflow就行了,有一点要注意的是目前只有python3.5能装tensorflow,最新版的python3.6都不行. 装好tensorflow后,我建议大家不要直接用测试用例进行测试(如果没装好的话出现的错误一般都是:module 'tensorflow' has no attribute 'constant').第一次测试时可以在p

随机推荐