zoukankan      html  css  js  c++  java
  • Apache,PHP,MySQL,PMA手动配置的注意事项

    注:本文之前发布在自己的QQ空间,复制过来的时候,颜色信息丢失了,回头有空再把颜色重新标上!

    前言:LAMPLinux+Apache+MySQL+PHP)环境是目前开源社区最活跃的开发和运行平台,有大量的网站程序是建立在这个平台上的,为了学习我们可能需要搭建这个环境,有一些一体化的安装包比如WAMPXAMPP,都可以一键安装好所有的程序,为什么还需要手动安装呢?

     集成化的安装包,最大的好处是方便快速,甚至有一个统一的控制程序来管理各个部件,但是如果有问题了,还是需要手动来排查和修改各个部分的问题,而且我自己本人遇到的问题是,有时候为了调试从网上下回来的网站包,这些网站包的开发环境并不是用最新版的AMP来编写的(比如XAMPP是个很好的AMP包,界面和功能都非常好,但是它的数据库是MariaDBMariaDB数据库管理系统是MySQL的一个分支采用GPL授权许可 MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能轻松成为MySQL的代替品,语法上全面兼容MySQL[MySQL因为被Sun收购,Sun后来又被Oracle收购了,已经是一个商业软件了]),如果用来学习,MariaDB完全可以代替MySQL但是网上下回来的这些源程序,放在全新的环境下甚至根本没法运行,会出现各种错误,所以全手动安装AMP环境也是没办法的事。废话不说说了,直接上干货。

    1.【单独安装PHP】
        最先安装的是php,目前有php5和php7两种版本,都尝试安装了一下,php5安装比较顺利,安装在win7内置的iis7.5下(后文有如何安装PHP在Apache上的步骤),参考一下文章:http://user.qzone.qq.com/475213823/blog/1452652341 
        简单注意步骤如下: 
     
        a)电脑上必须安装iis,安装时要选择cgi模块;
        b)为了减少配置的麻烦,借助PHP Manager工具,可以方便的配置;
        c)将php.ini-development改名为php.ini 
        d)修改php.ini 查找data.timezone  修改为date.timezone = “Asia/Shanghai”(这里必须改,不然会出警告)   
        e)找到Windows Extensions开启 所需模块,如:php_curl.dll  php_mysql.dll   php_mysqli.dll   php_xmlrpc.dll   php_curl.dll   只要去掉前面的 分号 保存就可以了;
        f)回到IIS界面,双击PHP Manager后,点击“Register new PHP Version”,然后选择好c:php5.3.5php-cgi.exe,就OK了。然后静悄悄的php.ini就会为适合IIS7.5的配置默认给你生成好了
        g)最后核验一下吧,仍在这个界面上,可以点一下“Check phpinfo()”;然后无意外的情况下会弹出令人激动的PHPInfo页面了!

        PS1.安装php7要注意,下载的如果的编译版本,如果是vc14版本,要先安装vcredist2015_x86_14.0.23026.0的运行库,不然会无法运行,一开始不知道,在iis里鼓捣好半天也没发现,虽然知道是vc14,但是以为自己的win7又装了vs2013,应该各种运行库都有了,但是事实上确实没有,需要单独安装,在命令行直接运行 php.exe的时候,弹出了vc版本不对的提示,才知道的。

        PS2.还有两点忘了说,windows emp目录要设置user的读写权限,php的安装目录也要设置user的读写权限,不然iis会报错!

        ,,,,,,,,,,,,,,,,,,,,,,,,,,,,

        上面是如何在IIS上安装PHP,在Apache中安装PHP并且配置PMA连上MySQL也有些要注意的事项

    这里的部分内容跟后面单独设置MySQLApache有小部分重叠,但是这里重点讲述Apache下安装步骤:

         【PHP】
         修改配置文件如下:
         extension_dir = "C:PHP5ext"
         error_log = "C:WindowsTempphp-5.6.11_errors.log"
         upload_tmp_dir = "C:WindowsTemp"

         有些时候要写成朝左的斜杠
          extension=php_gd2.dll  上传图片,登录验证码很多时候需要这个扩展!
          extension_dir = "c:/php5/ext"
          extension=php_curl.dll
          extension=php_mysql.dll
          extension=php_mysqli.dll
          extension=php_openssl.dll
          extension=php_xmlrpc.dll
          date.timezone = "Asia/Shanghai" 

          有些版本PHP自带的dll还不全,没有php_mysql.dll,没有php5apache2_2.dll还得重新下PHP,不要单独下一个dll文件,有时候根本不知道下回来的dll是什么版本,所以选择PHP版本也非常重要,我自己下载的php-5.3.5-Win32-VC6-x86.zip,这个版本内容比较全;php.ini文件还要拷贝到windows目录下,不然在Apache设置PMA访问MySQL时会有错误!
          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
         php5.5使用的编译器是vc11,
         php5.4和php5.3的是vc9,
         php5.2是vc6。同时还要注意是x86版本,还是x64版本。
         目前只有php5.5提供x64版本,其他都只有x86版本。
     
         1、Apache2.0对应的PHP模块为 php5apache2.dll

         2、Apache2.2对应的PHP模块为 php5apache2_2.dll
         3、Apache2.4对应的PHP模块为 php5apache2_4.dll

          apache.org下载的Apache都是vc6版本,否则就根据不同文件说明安装不同的运行库。

          vc11运行库x86/x64版本:http://www.microsoft.com/en-us/download/details.aspx?id=30679
          vc10运行库x86版本:http://www.microsoft.com/en-us/download/details.aspx?id=5555
          vc10运行库x64版本:http://www.microsoft.com/en-us/download/details.aspx?id=14632
          vc9运行库x86版本:http://www.microsoft.com/en-us/download/details.aspx?id=5582
          vc9运行库x64版本:http://www.microsoft.com/en-us/download/details.aspx?id=15336

         如果不清楚你的情况,可以安装全部运行库,再也不用为这个问题担忧了。 

          1、php5.2支持Apache2.0和Apache2.2;

          2、php5.3、php5.4同时支持Apache2.2和Apache2.4;
          3、php5.5只支持Apache2.4 
         除非你自己手动编译php5_module模块,否则只能有以上3种选择。 
          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 


          【MySQL】 
           这一步跟普通安装MySQL没什么两样,可以用exe安装,也可以用zip包安装,参见下面的安装方法;
           但是有一个陷阱:在有些版本的apache+pma环境下,要把libmySQL.dll 复制到Windows/System32目录里,不然又是有奇怪的错误!
           libmySQL.dll在不同版本的MySQL里位置还不一样:

           mysql 5.6.24  D:mysql-5.6.24-win32liblibmysql.dll
           mysql 5.0.96  mysql安装路径inlibmySQL.dll

          安装好的MySQL可以暂时不设置登录密码,在安装好Apache+PMA之后,在PMA上修改密码! 


          【Apache】
          在apache上安装对php的支持,修改conf/httpd.conf如下
            LoadModule php5_module "c:/php5/php7apache2_4.dll"
            PHPIniDir "c:/php5"
            AddType application/x-httpd-php .php 
     
           在apache上安装对mysql的支持,不需要做什么,主要是设置pma的【虚拟主机】或者【虚拟目录】路径,以便浏览器能够访问该目录:
           修改conf/httpd.conf如下
     
            < VirtualHost 127.0.0.2:80>
                DocumentRoot D:/PHPMyAdmi
                ServerName 127.0.0.2:80
            < / VirtualHost>
            Alias /phpmyadmin "D:/PMA"

            Alias /pma  "D:/PHPMyAdmin"
            <Directory "D:/PHPMyAdmin">
                 Order allow,deny
                 Allow from all
                 DirectoryIndex index.php
            </Directory>
           重启apache以后,你的虚拟主机就配置好了,浏览器输入127.0.0.2/pma,来访问PMA了,如果不使用虚拟主机,去掉VirtualHost部分即可,Alias是为目录设置了别名,这样就可以通过127.0.0.2/pma来访问,不需要输全127.0.0.2/phpmyadmin了。

          【PHPMyAdmin】
            版本的选择,3.5.6和4.6.3(到本文截止最新版),有些网站源程序自带了pma,所以有些时候会遇到旧版本的pma,新版本也许还有些错误,老版本未必是个坏选择;
             把PMA目录下的 config.sample.inc.php 改成 config.inc.php
             $cfg['Servers'][$i]['AllowNoPassword'] = True;

             刚装好的MySQL先不设置密码,这里开放允许空密码登录,然后进入PMA后,修改 root@127.0.0.1,root@localhost,root@::1的密码,貌似这几个都要修改,127.0.0.1是为了网站登录,localhost是命令行操作sql,::1是为了IPv6设置的。

    --------------------------------------------------------------------------------------------------

    2.【单独安装MySQL】
        先在网上下载的exe安装包,mysql-installer-community-5.7.13.0.msi,发现安装的时候无法选择安装路径,默认只能装在c盘,我的c盘空间不太多了,看了下网上的安装教程,打算全手动安装!

        从网上下载了zip包,mysql-5.6.24-win32.1432006610.zip ,解压之后,找到软件根目录下的my-default.ini,修改如下几行:

              basedir = D:mysql-5.6.24-win32
              datadir = D:mysql-5.6.24-win32data
              port = 3306
              server_id = mysql
              character-set-server=utf8
              default-storage-engine=INNODB
              max_connections=200 

      然后在软件的bin文件夹的命令行里 执行:mysqld install 安装服务
                                                                       net start mysql 启动服务 
            >mysql -uroot -p  回车 就可以进入mysql的命令行界面了;
              >设置密码的方法:mysqladmin -u root -p password 密码 

      安装完MySQL可以再装一个MySQL Query Browser 的图形界面工具,比起SQLServer的企业管理器来说,这个工具实在太简陋了,所以多数人的选择是装一个PHPMyAdmin。

        PS. 在windows的环境变量PATH里加入mysql的完整路径,就可以方便的直接输入mysql命令
               卸载MySQL服务的方法:>sc delete mysql
     
    --------------------------------------------------------------------------------------------------
     
    3. 【在IIS环境下安装PHPMyAdmin】
         PMA是一套php语言编写的基于web浏览器的MySQL网页界面程序,方便配置和管理MySQL的各项功能,以下是把PMA安装在IIS的虚拟目录上的步骤(后文Apache部分有如何安装PMA在Apache上的步骤):
     
         同样没有采用exe的安装文件,网上下回来的只有zip压缩包,解压之后放在任意盘的根目录下,比如D:phpMyAdmin
         目前最新的版本是4.6.2,我运气比较差,下了个4.6.1版,这个版本对中文支持的不好,虽然能打开界面,但是有好多地方都出现错误,最新的4.6.2版已经修正了错误;

         在IIS环境下安装PMA步骤:
         a) d:phpmyadmin,设置user的读写权限;
         b) IIS下新建一个网站phpmyadmin,使用8080端口,80端口已经被iis占用了,物理路径指向d:phpmyadmin
         c) 如果IIS上的PHP已经安装好了,那么直接打开127.0.0.1:8080,就能打开网页程序了;

    --------------------------------------------------------------------------------------------------

    4. 【单独安装Apache】
         Apache是一个开源的web服务器,是一个广泛运行在各个平台的web服务器,我们这里是安装Windows版本的Apache,官网下好zip安装包,官网现在也不再提供exe的安装程序了,找到ApacheHaus也就是Apache的HTTP服务器,httpd-2.4.20-x86-vc14-r2.zip(当前最新版本是2.4),如果有带vc11,vc14字样的,同样要先安装对应版本的vc运行库。

         安装步骤:
         a)将apache2.4解压到D:Apache24,如果直接解压在根目录不需要修改路径,否则需要修改路径
         b) D:Apache24confhttpd.conf,就是配置文件,打开之后,修改如下三行的配置信息,因为80端口已经被IIS占用了,所以我改为6666;
            ---------------【原始的配置信息】-----------------
             Define SRVROOT "Apache24"
             Listen 127.0.0.1:80 
             ServerName localhost:80
     
             ---------------【修改为自己的配置】------------------
             Define SRVROOT "/MyHTTP/Apache24"
             Listen 127.0.0.1:6666 
             ServerName localhost:6666
             

            
       c) 在bin文件夹的命令行中,>httpd -k install,就能安装apache服务器了,要卸载,命令改成uninstall即可;
      d) 如果一切顺利,那么在浏览器中打开 http://127.0.0.1:6666/就能看到Apache安装成功的主页面了;

      PS.当然一切没那么顺利,我就遇到了问题,输入完 httpd -k install,报了443端口的错误,应该这个端口是被占用了;
       解决方法: 通过>netstat -ano,可以看到占用443端口的进程的PID号,然后通过【任务管理器】的[服务],查到相关的服务器名,通过>services.msc找到相关进程,关闭或者停用或者改成手动运行即可;在我的电脑上占用443的是vmware workstation服务,手动让它启动即可。
       PS. 修改Apache的443端口:
        1. 修改conf/extra/httpd-ssl.conf 文件里的443改为442,如果是XAMPP,改这一个就够了;
        2. 修改conf/extra/httpd-ahssl.conf 文件里的443改为442,如果是单独下载的Apache,还要改一下这里!
        3. httpd -k uninstall
        4. httpd -k install
        5. Apache Monitor -> Start  -> OK

       或者修改VMWare的端口
       
     

     给Apache加上PHP的模块:D:MyHTTPApache24confhttpd.conf
     
    ################# PHP Support ######################
    LoadModule php7_module "c:/php7/php7apache2_4.dll"
    PHPIniDir "c:/php7"
    AddType application/x-httpd-php .php
    ################# PHP Support ######################

    给Apache加上PHPMyAdmin的虚拟目录: D:MyHTTPApache24confhttpd.conf
    ################# PMA Support ######################
     Alias /phpmyadmin "C:/phpMyAdmin"
    <Directory "C:/phpMyAdmin">
    Order allow,deny
    Allow from all
    DirectoryIndex index.php
    </Directory>
    ################# PMA Support ######################
      追加:要注意Apache的版本和PHP的版本问题,我先开始装的Apache2.4是x64版本,PHP是win32的版本,所以在配置完httpd.conf之后,启动Apache会报函数错误,换成win32版本的Apache问题解决,或者找到PHP win64的相关模块!
  • 相关阅读:
    WSP部署错误—SharePoint管理框架中的对象“SPSolutionLanguagePack Name=0”依赖其他不存在的对象
    Elevate Permissions To Modify User Profile
    Error with Stsadm CommandObject reference not set to an instance of an object
    ASP.NET MVC3添加Controller时没有Scaffolding options
    测试使用Windows Live Writer写日志
    配置TFS 2010出现错误—SQL Server 登录的安全标识符(SID)与某个指定的域或工作组帐户冲突
    使用ADO.NET DbContext Generator出现错误—Unable to locate file
    CSS
    HTML DIV标签
    数据库
  • 原文地址:https://www.cnblogs.com/skysowe/p/5628808.html
Copyright © 2011-2022 走看看