程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> windows下apache+mysql+php+phpmyadmin的配置方法

windows下apache+mysql+php+phpmyadmin的配置方法

編輯:關於PHP編程

apache服務器沒什麼可說的地方,盡量去官網下載個最新的。

有一個地方需要注意:php教程是以模塊的形式加載到apache這個容器裡面的,就是你在配置apache加載php模塊的時候,注意那個路徑的問題。具體配置語句

loadmodule php5_module d:/php/php5apache2.dll 是指以module方式加載php

phpinidir "d:/php" 是指明php的配置文件php.ini的位置

這個路徑中盡量不要出現空格,比如我的路徑是 loadmodule php5_module d:/peogram files/php/php5apache2.dll這個就會導致錯誤,你需要換成相對路徑,比如"../php/php5apache2.dll",但是相對路徑一定要正確,這要看你怎麼安裝各個模塊的,建議安裝在統一目錄下,方便管理。

php就得注意一下,這個問題很讓人糾結。下面是php的下載

php 5.3 (5.3.5)  window平台包下載

 

vc9 x86 non thread safe (2011-jan-05 21:37:35)

  • zip [14.96mb]
    sha1: 2fdd7b2b17d359725d9f297b6a59f17b71a913a6
  • installer [26.9mb]
    sha1: d7cfd584231e68dc9e87cdff45a6d11fa3b03689
  • debug pack [7.94mb]
    sha1: 414c30a12a402d3af30b46de4b2e0ca391872982

vc9 x86 thread safe (2011-jan-05 21:31:04)

  • zip [15.1mb]
    sha1: 7593b0ebba4b43418fd2f3c18eac83d698da46d6
  • installer [27.02mb]
    sha1: db510126e3f9b580c38fb6dd8895e5a67403a223
  • debug pack [8.29mb]
    sha1: 339f6092e4c4fee9c5a6a0f6d0f8359fbfbda60b

vc6 x86 non thread safe (2011-jan-06 19:06:20)

  • zip [13.13mb]
    sha1: b11a6a1597219d7ce10bc315cde411f37346383e
  • installer [23.84mb]
    sha1: 4249683e8b88ceed32bf12c0b883a51bb10e43d9
  • debug pack [4.86mb]
    sha1: 9fb328a8c798bfe797e1a7f683571dc3812f3aa8

vc6 x86 thread safe (2011-jan-06 18:56:08)

  • zip [13.26mb]
    sha1: 8658b5c58a9893d46290beb70aa2335226e2c523
  • installer [23.95mb]
    sha1: 05fe4fb8f03a2f9fa71d47aad60e8c9becd6bb7d
  • debug pack [5.03mb]
    sha1: 9d96d42b14f516ee5935404161836ec28b572bbf
  • 一共四種供你選擇。但是一定要選對。
  • vc6是什麼?
    vc6就是legacy visual studio 6 compiler,就是使用這個編譯器編譯的。
    vc9是什麼?
    vc9就是the visual studio 2008 compiler,就是用微軟的vs編輯器編譯的。

    那我們如何選擇下載哪個版本的php呢?
    如果你是在windows下使用apache+php的,請選擇vc6版本;
    如果你是在windows下使用iis+php的,請選擇vc9版本;

    那non thread safe是什麼?
    non thread safe就是非線程安全;
    thread safe 是什麼?
    non thread safe 是線程安全;
    官方並不建議你將non thread safe 應用於生產環境,所以我們選擇thread safe 版本的php來使用

    我選擇的是vc6 x86 thread safe (2011-jan-06 18:56:08),因為我是在windows下搭建的apache服務器。

    php直接解壓就算是安裝。按教程一步一步的走就可以。

    經常出現的問題是:

    unable to load dynamic library 'd:/server/php/ext/php_exif.dll'
     unable to load dynamic library 'd:/server/php/ext/php_fdf.dll'
     unable to load dynamic library 'd:/server/php/ext/php_ifx.dll' 

    ……

    類似的錯誤,解決辦法是

    1.修改php.ini文件的extension_dir配置到你正確的php/ext/,因為這個文件夾裡面是你所有的擴張模塊,包括mysql教程之類的。

    2.把你的php安裝目錄下的dll文件,php/ext文件下的dll文件統統復制到widows/0system32下面去,或者你修改系統環境變量path,加上;d:/www/php;d:/www/php/ext;這是我的安裝目錄。這個實現的效果跟復制到system32下面是一樣的,具體原因我也不知道為啥,我只知道程序運行的時候首先去system32下面找相應的庫文件進行加載,如果找到就停止,如果找不到就去path下面去尋找,如果再找不到,就去配置文件extesion_dir下面去找,再找不到就報錯,所以如果你電腦上以前安裝過php4的話,請先把system32下面相應的dll文件刪除掉。

    3.這些加載的模塊,是加載還是刪除是在php.ini裡面配置的

    類似於extension=php_bz2.dll

    extension=php_curl.dll

    extension=php_fileinfo.dll

    extension=php_gd2.dll

    extension=php_gettext.dll

    ;extension=php_gmp.dll

    extension=php_intl.dll

    一定要注意請不要把所有的模塊都啟動,雖然系統資源浪費也多不了哪去,但是默認的php5安裝包下並不一定存在這個模塊的相應dll,所以你應該按照系統錯誤提示把相應的模塊給停用了,停用方法,跟你是怎麼開啟模塊是相反的。

    4.還有就是模塊之間會有依賴性,比如我想要開啟extension=php_exif.dll這個模塊,那麼就必須先開啟extension=php_mbstring.dll模塊,這也可能是你加模塊不成功的原因。


    安裝mysql很簡單,直接按提示安裝就行,不需要與服務器各個模塊之間進行配置

    由於目前phpmyadmin的最新版本已經更新到了2.11.5.1,網上流傳的很多配置方法都是以前老版本的,已經不太適應新版本的配置要求;於是flymorn順便也把phpmyadmin2.11.5.1的配置步驟也列在下面;為了切換及調試php方便,我采用的是windows系統,本地調試。
     
        1、先下載phpmyadmin安裝包:
    到國外官方網站http://www.phpmyadmin.net上,點擊導航欄上的“downloads”鏈接進入下載頁面,選擇“all-languages.zip”版本下載到本地,解壓;把解壓縮文件放到系統指定的虛擬根目錄下的phpmyadmin文件夾裡(可自定義文件夾名),如flymorn的本地存放位置是d:wwwphpmyadmin裡。

     

        2、找到phpmyadmin文件夾裡的/libraries/config.default.php文件(舊版本是根目錄下的config.inc.php文件),用支持utf-8編碼的寫字板打開進行編輯。 

     

        3、查找 $cfg['pmaabsoluteuri'] 
    修改為你將上傳到空間的phpmyadmin的網址 
    如:$cfg['pmaabsoluteuri'] = 'http://www.piaoyi.org/phpmyadmin/'; 
    這裡因為我是本地調試,我改為$cfg['pmaabsoluteuri'] = 'http://localhost/phpmyadmin/';
    注意:不要漏掉最後的反斜槓/和開頭的http。

     

        4、查找 $cfg['servers'][$i]['host'] = 'localhost';(通常用默認,也有例外,可以不用修改) 

     

        5、查找 $cfg['servers'][$i]['auth_type'] = 'config'; 
    在自己的機子裡調試用config;如果在網絡上的空間用cookie,這裡我們既然在前面已經添加了網址,就修改成cookie。
    我個人建議:無論是本地還是網絡上,都建議設置成cookie,安全第一。
    同時,當auth_type這個值設置為cookie後,還有一個地方需要作出相應的修改:
    $cfg['blowfish_secret'] = '';
    改成:$cfg['blowfish_secret'] = 'www.piaoyi.org';
    這裡的www.piaoyi.org自己隨便定義,不超過46個字符。如果這個地方留空,將會出現上文提到的第2個錯誤:“配置文件現在需要絕密的短語密碼(blowfish_secret)”。

     

        6、查找 $cfg['servers'][$i]['user'] = 'root'; // mysql user(用戶名,自己機裡用root;在網上一般為你的ftp用戶名,虛擬主機提供商會告訴你的;一般不要修改) 

     

        7、查找 $cfg['servers'][$i]['password'] = '123456'; // mysql password (123456修改成連接你的mysql數據庫教程的用戶密碼)

     

        8、查找 $cfg['defaultlang'] = 'zh'; (這裡是選擇語言,zh代表簡體中文的意思) 還有 $cfg['defaultcharset'] = 'gb2312';(修改默認編碼為國標)

     

        到這裡,phpmyadmin就已經配置完成ok;你可以打開http://localhost/phpmyadmin/訪問方便快捷的圖形化管理軟件phpmyadmin了。關於本文沒有提到的配置文件裡的其他選項,大家可以不用關心了也不必修改。關於具體如何操作phpmyadmin不在本文討論的范圍內,不過圖形化界面,是通俗易懂,稍微看看就會用了(參考)。

     

        下面談談,flymorn在安裝配置phpmyadmin的過程中所遇到的幾個問題。

     

        第一個問題:“無法載入mcrypt擴展,請檢查php配置”。

     

    1、沒有正確安裝mysql數據庫,在系統服務中mysql相關的服務沒有啟動。
    2、在系統的 system32(c:windowssystem32) 目錄下缺少 libmcrypt.dll文件,解決方法是找到php目錄下的libmcrypt.dll,並將libmcrypt.dll復制到c:windowssystem32目錄中,然後重新啟動web服務。
    3、在php目錄下的php.ini文件中,沒有將“;extension=php_mcrypt.dll”中的前面一個“;”去掉,所以不能使用相應功能,解決方法是打開php.ini文件,找到;extension=php_mcrypt.dll改成extension=php_mcrypt.dll     //去掉前面的;使之生效
    4、mysql目錄沒有讀取權限,正確的目錄權限如下:
    administrator    完全控制
    system     完全控制
    user     讀取加運行
    其他的用戶權限全部刪除(也可保留,但安全性不高,建議刪除),然後重啟mysql服務和web服務(建議修改此項後重啟一下服務器)。
    5、以上方法都不行的話,再用這個方法:桌面>我的電腦>右鍵屬性>高級>環境變量>系統變量>新建
    名:phpdir
    值:c:php(你的php在什麼目錄就是什麼) 
    (參考來源:地址)

     

        第二個問題:“無法載入 mysql 擴展,請檢查 php 配置”

     

    把 php 目錄下的 libmysql.dll 復制到:c:windowssystem32 下,然後重啟apache。

     

        第三個問題:“配置文件現在需要絕密的短語密碼(blowfish_secret)”

     

    確保在config.default.php文件裡面進行了正確的設置 :
    $cfg['servers'][$i]['auth_type']= 'cookie';
    同時
    $cfg['blowfish_secret'] = 'www.piaoyi.org'; //(這個值隨便寫,就是不能留空)

     

    其實這個問題,我碰到了確實很郁悶,如果按照我在上面提到的配置方法做了,應該不會提示這個錯誤。經過我2個多小時不停的修改config.default.php配置文件,始終提示這個錯誤,幾乎達到了崩潰的邊緣了。

     

    然後就是靈光一現,突然發現:我把auth_type認證方式改為http,改為config時,打開頁面始終出現這個錯誤,也就是說改變了認證模式,並沒有對phpmyadmin起作用,難道是其他的配置文件在影響決定著phpmyadmin?

     

    立馬來到phpmyadmin根目錄,赫然發現根目錄下有一個config.sample.inc.php文件存在的同時,還有一個文件config.inc.php也存在!!而這個是以前老版本的配置文件,原來是這個文件搗的鬼。馬上刪除config.inc.php,再進入調試頁面,錯誤消失了!問題解決。

     

    看來phpmyadmin根目錄下的config.inc.php配置文件的優先級比/libraries/config.default.php的配置文件高,系統是先調用根目錄裡的配置文件,然後才是libraries文件夾裡的配置文件,艾,這個問題,折騰了這麼久,嗚呼哀哉。總歸解決了,舒一口氣啊。

     

        第四個問題:“#2003-服務器沒有響應”。

     

    遇到這個問題多半是mysql數據庫沒有啟動,建議直接在在:控制面板-管理工具-服務裡面把mysql啟動。關於是否啟動,你可以在任務管理器裡查看是否有“mysqld-nt.exe”這樣的進程,如有有,則說明mysql已經啟動。
      
        第五個問題:“沒有發現php的擴展設置mbstring”。  

     

    修改 c:windows 下的 php.ini 文件,找到 ;extension=php_mbstring.dll 把;去掉,保存 php.ini,重新啟動apache即可。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved