原文url:http://www.cnblogs.com/pharen/archive/2012/02/06/2340628.html

  PHP集成开发环境有很多,如XAMPP、AppServ,Wamp......只要一键安装就把PHP环境给搭建好了。但这种安装方式不够灵活,软件的自由组合不 方便,同时也不利于学习所以我还是喜欢手工搭建PHP开发环境,需要哪个模块自己安装就行了,或者那个软件需要升级,直接升级那个软件就行了,并不影响 其他软件,非常方便。

  一、准备工作-下载所需软件

  二、安装软件

   1, 安装Apache: 双击安装,与安装其他Windows软件没有什么区别,在填Server Infomation时,并没有特殊规定,只要输入的信息符合格式即可。例如域名输入tl.com,网站输入www.tl.com(注意,这里域名要指向你主机的ip,在host文件中更改,例如192.168.0.156  www.tl.com),邮箱可以填自己的邮箱,注意,最下边选择for all users,on port 80(端口可以在httpd.conf中配置),as a Service(在系统中生成一个服务)

  

  接下来,一直下一步就可以了。

安装完成之后,在浏览器输入http://localhost或者www.tl.com(前提,host中配置了ip指向),如果显示It Works!,表示Apache安装成功。

  

  1.1  绿色版apache安装方法(现有官方下载的只有压缩包,没有安装版)

    ---下载教程http://jingyan.baidu.com/album/29697b912f6539ab20de3cf8.html?picindex=2

    ---将下载的压缩包解压后,里边有类似Apache24或者Apache22的文件夹,将文件夹拷贝到指定目录,然后命令行下进入到apache下面的bin目录,输入httpd -k install把apache安装成windows后台服务。

  1.2 Apache卸载服务

    ---若Apache服务器软件不想用了,想要卸载,需要先卸载apache服务(切记,若直接删除安装路径的文件夹,会有残余文件在电脑,可能会造成不必要的麻烦)
    ---在CMD命令窗口,输入如下(建议先停止服务再删除):
    ---sc delete apache
    ---apache是Apache服务器的服务名

    2,安装PHP:将php-5.3.10-Win32-VC9-x86.zip解压到一个目录即可(例如,D:\php5\目录下)。具体apache和php怎么连接,后边有配置说明。

  3,安装MySQL:双击安装,如果需要更改安装目录,则在Choose Setup Type选择Custom

  

  

  

  安装完成后开始配置MySQL,全部保持默认选项即可,但最好把MySQL默认编码改为utf8,在Modify Security Settings选项中设置密码,输入两次密码即可完成,最后点Execute完成配置。

  

  

  三,整合Apache+PHP+MySQL(总结:Mysql不用配置,重点配置Apache和php,让Apache支持解析php文件。重点看phpinfo()配置信息--->模块整合情况,通过phpinfo错误来一步一步解决错误!!!)

   ---Apache : 首先修改Apache的配置文件,让Apache支持解析PHP文件。Apache配置文件在Apache安装目录的conf目录下的httpd.conf。
  1, 让Apache可以解析php文件,在配置文件中找到

        #LoadModule vhost_alias_module modules/mod_vhost_alias.so

      在下一行或者再后边几行添加 (绿色的位置是根据PHP的所在目录而定的)

        LoadModule php5_module "D:\php5.6\php5apache2_4.dll"
        PHPIniDir "D:\php5.6\php5apache2_4.dll"     //注意这里是错误的,会出现mysql连接不上的情况,要改成后边代码。

        PHPIniDir "D:\php5.6\php.ini"  或者   PHPIniDir "D:/php5"(你的php安装目录)
        AddType application/x-httpd-php .php .html .htm

    ---如果是Apache + PHP5的话可以使用 PHPIniDir 指定php5的配置文件php.ini的路径
    如在httpd.conf:
    #以apache的模块方式运行php
    LoadModule php4_module /apache/php/sapi/php4apache.dll
    PHPINIDir /apache/php/php.ini

    ---注意,如果php版本和apache版本不对应,引用的php5apache2_4.dll文件不对应,会引起apache不能启动问题,2015-07-26发现!!! 如果解决问题???就是用apache对应最新的php版本,64位对64位,vc11对应vc11,之前的老版本尽量不用。

  2, 在配置文件中找到(默认页,可以是index.php,也可以是index.html)

        DirectoryIndex index.html

      改为

        DirectoryIndex index.php index.html

   3, 修改Apache站点目录,在配置文件中找到(Apache安装的目录不同,显示的值不一样)

        DocumentRoot "D:/Develop/Apache2.2/htdocs"  或者#DocumentRoot "${SRVROOT}/htdocs"  //默认apache的目录是htdocs  //之前的注释掉就行,前面加#号

        DocumentRoot "D:/Workspace"      //改成,我们自己的网站目录 

        #DocumentRoot "D:/Workspace/PHP"    //网站根目录如果设置成二级目录,会出现首页index.html显示不了的问题    

      再找到(同上)

        <Directory "D:/Develop/Apache2.2/htdocs">

      改为

        <Directory "D:/Workspace">  

        #<Directory "D:/Workspace/PHP">   //网站根目录如果设置成二级目录,会出现首页index.html显示不了的问题

  4,PHP :php.ini-development(或者php.ini-recommended)改名为php.ini,作为PHP的配置文件然后再修改php.ini:

      (1). 设置PHP扩展包的具体目录,找到

        ; On windows:
        ; extension_dir = "ext"

      改为 (值是ext文件夹的目录)

        ; On windows:
          extension_dir = "D:/Develop/PHP/ext"

       (2).开启相应的库功能,找到需要开启的库的所在行

        ;extension=php_curl.dll

        ;extension=php_gd2.dll

        ;extension=php_mbstring.dll

        ;extension=php_mysql.dll

        ;extension=php_xmlrpc.dll

         去掉前面的分号(注释),即改为

        extension=php_curl.dll

        extension=php_gd2.dll

        extension=php_mbstring.dll

        extension=php_mysql.dll

        extension=php_xmlrpc.dll

      (3). 设置时区,找到

        ;date.timezone =

        改为

        date.timezone = Asia/Shanghai    

    配置完成,检测一下配置是否成功。重启Apache,在站点目录下新建文件index.php,输入内容:

    <?php
      phpinfo();
    ?>

    打开浏览器输入http://localhost,显示如下内容,则安装成功,并且成功关联MySQL。

    

    ---注意下图中,如果只出现mysqlnd表示mysql关联不成功,必须出现mysql才行!!!

    

    @php连接不到mysql(即phpinfo()中没有mysql模块,只有mysqlnd)问题汇总?

---检测方法看phpinfo中是否有mysql模块,没有就是连接不成功!!!
---每次修改过配置以后,都要重启Apache服务,有时候需要尝试多次重启,或把它晾那一会。
---不同系统不同版本的解决方法不一样,最好的办法就是安装WampServer集成环境
1,确定mysql服务是否启动
2,确保php.ini文件中的下边配置修改了
mysql.allow_persistent = On
mysql.max_persistent = -1
mysql.max_links = -1
mysql.default_host =localhost
mysql.default_user =root
mysql.default_password =你的mysql的root的口令
;extension=php_mysql.dll   去掉前面的分号
3,在Apache安装目录下找到conf文件夹,即默认安装路径C:\Program Files\Apache Software Foundation\Apache2.2\conf,找到httpd.conf文件,在
LoadModule php5_module "D:/php/php5apache2_2.dll"下面追加如下语句即可:
PHPIniDir "D:/php5"(你的php安装目录),有时候PHPIniDir后边跟的代码是这样"D:\php5\php5apache2_2.dll"把它改成D:/php5即可。
---我的错误就是在这里解决。
4,有的教程里说需要把libMysql.dll文件拷贝到c:\windows\system32和D:\php5\ext下面,如果一些配置方法在系统环境变量里设置好path的话,就不需要这步操作了。
5,配置好后重启apache,看看phpinfo是否有mysql服务,如果有就配置成功了;没有的话需要按以上几点重新配置。

 

    ---从配置信息中能看到很多重要的知识点,不要小看配置信息,例如重要的:

    平时遇到了错误,从这些配置信息中,能帮我们检查,我们的配置是否正确!!!

    Configuration File (php.ini) Path     C:\Windows
    Loaded Configuration File     D:\php5.6\php.ini

    Compiler     MSVC11 (Visual C++ 2012)
    Architecture     x64

    Apache Version  Apache/2.4.16 (Win64) OpenSSL/1.0.1p PHP/5.6.11

    Hostname:Port localhost:80

    Server Administrator admin@example.com

    DOCUMENT_ROOT D:/Workspace

    CONTEXT_DOCUMENT_ROOT D:/Workspace

    SERVER_NAME localhost

    

    

 

@可能会遇到的问题:

1,配置页面上没有mysql这一项,问题就在这里了。这是由于php没有加载mysql扩展模块导致的。但是我在PHP安装目录下的php.ini文件中将mysql模块配置上以后,配置页面上,还是没有mysql这一项,那是什么问题呢?

  好多教程都忘记了一点,那就是php安装目录下的php.ini并不是apache调用的,apache需要到C:/windows目录下去寻找php.ini,然后加载。

  所以,我们要把php安装目录下的php.ini文件拷贝到C:/windows目录下,注意: 不是C:/windows/system32目录!

  然后就apache就能正常加载mysql了。

 

为了实现梦想,无论遇到多么大的困难,都不退缩!
posted on 2016-05-21 08:47  学到老死  阅读(344)  评论(0)    收藏  举报