热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

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

Windows上安装Apache2、PHP5、MySQL5与Resin配合实现多系统之整合笔者之前一直使用Resin作为WEB应用服务器,近来有项目需要在已有的JSP系统中整合phpw
 

Windows上安装Apache2PHP5MySQL5 

Resin配合实现多系统之整合

 

笔者之前一直使用Resin作为WEB应用服务器,近来有项目需要在已有的JSP系统中整合phpwind系统,因此首次尝试在电脑中配置PHP的运行环境。谁知坎坷颇多,故觉得有必要记录下来,一来为了备忘,二来希望对后来者有所助益,避免走不必要的弯路。本人的安装操作过程也参考了很多前辈们的经验,在此一并表示感谢。

 

另外在进入正题前,再说几句题外话。下文的安装整合在Apache2.2PHP5MySQL5resin-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"

2extension_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" (引号中地址根据个人安装路径填写),将“X:/xxx/htdocs”改为网站所存放的文件夹,笔者在此将其改为DocumentRoot "D:/www"

2)找到LoadModule,在下面添加

        LoadModule php5_module "D:/dev/php/php5apache2_2.dll"

        PHPIniDir "D:/dev/php"

3)找到 DirectoryIndex index.html ,将其改为:

   

        DirectoryIndex index.php index.phtml index.html index.jsp

   

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文件,内容如下:

       

          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)/OLAP20个左右)”、“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(服务标识名称),并将MySQLbin目录加入到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用户密码):

   

      mysql_connect("localhost", "root", "**") or die(mysql_error());

echo "Connected to MySQL
";

?>

在浏览器中输入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"

   

      AllowOverride None

          Options None

          Order allow,deny

          Allow from all

重启Apache,在浏览器中打开http://localhost/phpmyadmin。在出现的对话框中输入管理员帐号(root)和对应密码,如果顺利登录并打开phpMyAdmin界面,则表明已安装完成。

 

    五、安装ZendOptimizer-3.3.3

 

ZendOptimizer的安装较为简单,只需按提示步骤选择安装路径、勾选Apache2.x以及设置项目所在的根目录即可。安装完成后,在浏览器中输入http://localhost/可以看到Zend 的信息。

 

    六、整合ApacheResin并配置虚拟主机

 

笔者电脑在Resin中已存在两个工程,假设其中一个名为tieba,另一个名为zhidao,现需再整合phpwind论坛系统,并实现分别可以用如下网址来访问对应的系统:tieba.aaa.comzhidao.aaa.combbs.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作如下修改:

1LoadModule 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)将修改为

 

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)开始配置虚拟主机,一个域名对应一个

 

    ServerName bbs.aaa.com

    DocumentRoot D:/www/phpwind

 

 

    ServerName tieba.aaa.com

    DocumentRoot D:/dev/resin-3.1.10/webapps/tieba

    ResinConfigServer 127.0.0.1 6800   

 

 

    ServerName zhidao.aaa.com

    DocumentRoot D:/dev/resin-3.1.10/webapps/zhidao

    ResinConfigServer 127.0.0.1 6800

 

    5、对Resin的配置文件resin.conf作如下修改:

 

1)由于已不需要Resin直接提供WEB服务,可将注释掉,只需保证有效监听本地端口即可。这里需要注意的是,如果ApacheResin不在同一台服务器上的话,此处的127.0.0.1以及上面提到的httpd-vhosts.conf文件中127.0.0.1都应改成Resin所处服务器的IP地址。

 

2)如下所示配置Host

 

 

   

 

 

 

 

重启ApacheResin,现在可以直接使用tieba.aaa.comzhidao.aaa.combbs.aaa.com这三个域名来访问对应的工程了。

 

    七、利用Apache Rewrite规则实现URL伪静态

 

在实现ApacheResin的整合之后,由于Apache对带htmlURL优先进行拦截处理,就可能导致原有为优化网站URL而在Resin系统中进行的伪静态设置失效,这时就需要通过Apache Rewrite规则进行重新设置。此处以tieba工程中的URL为例进行说明,操作步骤如下:

 

1、在httpd.conf中,找到#LoadModule rewrite_module modules/mod_rewrite.so,将前面的#去掉。

 

2、在httpd-vhosts.conf中,找到,将其修改为:

 

 ServerName tieba.aaa.com

 DocumentRoot D:/dev/resin-3.1.10/webapps/tieba

 ResinConfigServer 127.0.0.1 6800

     

        RewriteEngine On

        RewriteRule ^/tie/(\d+).html$ /do/viewthread?id=$1 [L,PT]

 

 

    这样就可以实现将类似于http://tieba.aaa.com/do/viewthread?id=77的网址伪静态为http://tieba.aaa.com/tie/77.html了。此处需注意的是,在规则后面必须写[L,PT],不然会将/do/viewthread?id=$1视为目录结构进行访问,而不交由Resin进行解析执行。笔者被此处纠缠较长时间,后来者谨记。

 

    好了,从上至下这样一个流程走来,完成了在Windows中对Apache2PHP5MySQL5phpMyAdminZendOptimizer的安装与配置,以及实现了ApacheResin整合、虚拟主机配置和URL伪静态的处理。接下来,笔者有空会来总结一下如何将Oracle中的数据快速便利的导入到MySQL中,以及如何将已有的JSP网站与phpwind论坛整合实现同步登入与同步退出的功能。


推荐阅读
  • 本文档详细介绍了服务器与应用系统迁移的策略与实施步骤。迁移不仅涉及数据的转移,还包括环境配置、应用兼容性测试等多个方面,旨在确保迁移过程的顺利进行及迁移后的系统稳定运行。 ... [详细]
  • Windows 平台 Ruby on Rails 安装指南
    本文详细介绍如何在 Windows 系统上安装 Ruby 及其开发框架 Rails,包括必要的环境配置和组件安装。 ... [详细]
  • 下面根据配置文件,来说明一些底层与webservices的关系:回顾一下servlet的映射模式。我们知道,servlet是从javax.servlet.http.HttpServ ... [详细]
  • 应用程序配置详解
    本文介绍了配置文件的关键特性及其在不同场景下的应用,重点探讨了Machine.Config和Web.Config两种主要配置文件的用途和配置方法。文章还详细解释了如何利用XML格式的配置文件来调整应用程序的行为,包括自定义配置、错误处理、身份验证和授权设置。 ... [详细]
  • windows 2008r2+php5.6.28环境搭建的示例
    这篇文章主要介绍windows2008r2+php5.6.28环境搭建的示例,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!安装IIS71、 ... [详细]
  • 点击下载php5与mysql5从入门到精通php5与mysql5从入门到精通是一本PHP5与MySQL的入门书籍,本书由卫喆和陈争航 ... [详细]
  • PHP5.2 内存管理器[来自IBM]
    2006年11月发布了PHPV5.2,它包括许多新增功能和错误修正。它废止了5.1版并被推荐给所有PHPV5用户进行升级。我最喜欢的实验室环境——Win ... [详细]
  • 本文介绍如何利用Python中的Epoll机制构建一个高效的Web服务器,该服务器能够处理多个并发连接,并向每个连接的客户端返回预定义的响应文本。通过使用Epoll,服务器可以实现高性能的I/O多路复用。 ... [详细]
  • 一、数据更新操作DML语法中主要包括两个内容:查询与更新,更新主要包括:增加数据、修改数据、删除数据。其中这些操作是离不开查询的。1、增加数据语法:INSERTINTO表名称[(字 ... [详细]
  • Node.js 开发入门:环境搭建与配置
    随着Node.js技术的日益成熟及其即将发布的1.0稳定版,越来越多的开发者开始关注并尝试这一高性能的服务器端JavaScript平台。本文将引导读者如何在Windows环境下安装配置Node.js,并介绍一些常用的开发工具和框架。 ... [详细]
  • 本文档详细介绍了Robot Framework的基础知识、安装配置方法及其实用技巧。从环境搭建到编写第一个测试用例,涵盖了一系列实用的操作指南和最佳实践。 ... [详细]
  • 深入理解FastDFS
    FastDFS是一款高效、简洁的分布式文件系统,广泛应用于互联网应用中,用于处理大量用户上传的文件,如图片、视频等。本文探讨了FastDFS的设计理念及其如何通过独特的架构设计提高性能和可靠性。 ... [详细]
  • 1、服务器配置信息① 主服务器IP:192.168.1.2② 从服务器IP:192.168.1.3③ 操作系统:主服务器:Win8,从服务器࿱ ... [详细]
  • php中php5_module、fastcgi和php-fpm是什么东西??
    php作为一门webapplication语言,他要与webserver配合一起使用,才能将网站动态的效果展现给人们看。常见的经典组合如(lamp、lnmp等等)。php与webserver ... [详细]
  • 今天我们来谈一下PHP中比较重要的一个函数header(),首先我们要知道header是干嘛的header()函数的作用是:发送一个原始HTTP标头[HttpHeader]到客户端。标头(he ... [详细]
author-avatar
SaraCody_174
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有