Apache,PHP,MySQL,PMA手動設定的注意事項

來源:互聯網
上載者:User

標籤:

註:本文之前發布在自己的QQ空間,複製過來的時候,顏色資訊丟失了,回頭有空再把顏色重新標上!

前言:LAMP(Linux+Apache+MySQL+PHP)環境是目前開源社區最活躍的開發和運行平台,有大量的網站程式是建立在這個平台上的,為了學習我們可能需要搭建這個環境,有一些一體化的安裝包比如WAMP和XAMPP,都可以一鍵安裝好所有的程式,為什麼還需要手動安裝呢?

 整合化的安裝包,最大的好處是方便快速,甚至有一個統一的控製程序來管理各個組件,但是如果有問題了,還是需要手動來排查和修改各個部分的問題,而且我自己本人遇到的問題是,有時候為了調試從網上下回來的網站包,這些網站包的開發環境並不是用最新版的AMP來編寫的(比如XAMPP是個很好的AMP包,介面和功能都非常好,但是它的資料庫是MariaDB,MariaDB資料庫管理系統是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.5\php-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\temp目錄要設定user的讀寫權限,php的安裝目錄也要設定user的讀寫權限,不然iis會報錯!

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

     上面是如何在IIS上安裝PHP,在Apache中安裝PHP並且配置PMA連上MySQL也有些要注意的事項

這裡的部分內容跟後面單獨設定MySQL和Apache有小部分重疊,但是這裡重點講述Apache下安裝步驟:

     【PHP】
     修改設定檔如下:
     extension_dir = "C:\PHP5\ext\"     error_log = "C:\Windows\Temp\php-5.6.11_errors.log"     upload_tmp_dir = "C:\Windows\Temp\"

     有些時候要寫成朝左的斜杠
      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-win32\lib\libmysql.dll
       mysql 5.0.96  mysql安裝路徑\bin\libmySQL.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後,修改 [email protected],[email protected],[email protected]::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-win32\data          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:\Apache24\conf\httpd.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:\MyHTTP\Apache24\conf\httpd.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:\MyHTTP\Apache24\conf\httpd.conf
################# PMA Support ######################
 Alias /phpmyadmin "C:/phpMyAdmin"<Directory "C:/phpMyAdmin">Order allow,denyAllow from allDirectoryIndex index.php</Directory>################# PMA Support ######################
  追加:要注意Apache的版本和PHP的版本問題,我先開始裝的Apache2.4是x64版本,PHP是win32的版本,所以在配置完httpd.conf之後,啟動Apache會報函數錯誤,換成win32版本的Apache問題解決,或者找到PHP win64的相關模組!

Apache,PHP,MySQL,PMA手動設定的注意事項

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.