使用MAMP在Mac OS X上安裝Apache、MySQL與PHP

使用MAMP在Mac OS X上安裝Apache、MySQL與PHP
文∕趙英傑

以前初次在iBook G4上安裝Dreamweaver MX 2004時,總無法連結到本機的Apache伺服器和MySQL資料庫系統。後來在Macromedia官方網站找到有關Mac版本的Bug訊息…因為軟體設計有問題,導致Mac版本無法連結到資料庫 :-(

這個Bug在後來發佈的升級程式中獲得解決。有一天遇到Macromedia美國原廠工程師,忍不住問他,為何Mac版的品質比不上Windows版?

他回答,因為熟悉Windows系統和PC架構的工程師多如過江之鯽,但是熟悉Mac系統的優秀工程師很難找,而且他們大多想進入蘋果、微軟、Adobe…等大公司,壓根兒不會想到Macromedia。

蘋果公司以前曾大力宣揚採用精簡指令集(RISC)架構的PowerPC,省電(發熱量較低)且效能高,擁有Pentium兩倍的運算速度…事實證明,先進的硬體也要有優秀的軟體工程師才能完全激發出它的潛藏威力。

Intel雙核心處理器打敗PowerPC

隨著處理器晶片設計日益複雜,PowerPC的消耗功率也越來越高,到最後,採用PowerPC G5的PowerMac竟然也得動用水冷散熱系統,甚至還因為PowerPC無法降低消耗功率,迫使蘋果轉向當初鄙視的Intel處理器,並且宣稱採用Intel Core Dual雙核心處理器的MacBook Pro效能,是採用PowerPC G4處理器的PowerBook的二到四倍!

以前我在iBook G4 800MHz上,使用iMovie + iDVD(4.0版)把兩小時的DV錄影帶轉成MPEG-2格式的DVD,沒有使用任何特效和濾鏡,大約耗時12小時!我問了一位蘋果行銷人員這個問題,他首先露出不可置信的表情,然後接著說「那是因為用Mac轉換出的品質比較好,所以要花比較多的時間」。

後來我改用Intel Core 2 Dual 1.83GHz的筆記型電腦,使用iDVD 6花費三個多小時,就搞定兩小時的DV影片!

當蘋果宣布將逐步改用Intel系列處理器後,國外的Macromedia討論區就有開發人員鼓掌叫好;當Adobe宣布併購Macromedia時,也受到許多Mac用戶的歡迎,因為在Adobe的加持下,Macromedia將獲得強化Mac版本的動能。在去年的MAX研討會上,某個原廠工程師在答覆用戶的問題時提到,Intel Mac版的Flex Builder(Flex的編輯器)的執行效能,比Windows版更快。

Adobe CS3系列軟體都有Intel原生版本,Mac用戶不用擔心被模擬器拖累速度。離題了…

啟用Mac OS X內建的Apache伺服器

Mac OS X已經內建Apache伺服器和PHP程式執行環境(解譯器),只要在System Preferences(系統偏好設定)面板的Internet & Network(網路)項目中,點選Sharing(共享),接著在「共享」設定畫面中,勾選Personal Web Sharing(個人網頁共享)選項,即可啟動Apache伺服器。

啟用個人網頁共享

啟動系統內建的Apache伺服器後,只要在瀏覽器中輸入電腦的位址,後面加上您的用戶名稱,即可連結到本機網站,格式如下:

預設的個人網站根目錄的路徑如下:

例如,筆者在Mac OS X系統的用戶帳號是’cubie’,所以個人網站的根目錄路徑是:

只要把HTML檔和相關的網頁資料存放到這個路徑,即可準備分享給全世界了。

安裝MAMP

Mac OS X並未內建MySQL資料庫系統與phpMyAdmin資料庫管理工具,在Mac上建構Apache + MySQL + PHP開發與測試環境最簡易的方法,是採用MAMP一次安裝所有必備的軟體(類似在Windows上採用AppServe安裝同樣的執行環境)。

讀者可以採用《碼上就會:Dreamweaver CS3 PHP、MySQL與AJAX》書本光碟裡的mamp_1.6.1.dmg進行安裝,或者到MAMP官方網站下載。安裝MAMP的方法非常簡單,雙按mamp_1.6.1.dmg映像檔後,螢幕上將出現底下的版權畫面,請按下"Agree(同意)"鈕:

MAMP授權

接著,只要把"MAMP"資料夾拖入上方的"Applications(應用程式)"資料夾複製到磁碟機就算安裝完畢了 :-)

安裝MAMP

MAMP附帶一個用來啟動和關閉Apache和MySQL服器的Widget,檔名叫做"Mamp Control.wdgt",位於Applications(應用程式)資料夾裡的"MAMP"目錄中。使用之前,請先將它複製到系統的Widgets資料夾,路徑是:

MAMP Control Widget

複製完畢後,開啟Dashboard(預設是按下F12功能鍵),把MAMP Control拖出來:

MAMP Dashboard

然後按下Mamp Control面板上的Start Servers(啟動伺服器)鈕,即可啟動Apache和MySQL。如果按下Widget底下的 i 鈕,將能選擇PHP語言的版本。

選擇PHP版本

開啟MAMP網站首頁與phpMyAdmin

MAMP的網站根目錄位於/Applications/MAMP/htdocs路徑,請將HTML網頁和PHP程式放在這個資料夾。使用書本的PHP範例檔練習時,請把光碟根目錄裡的www資料夾內容全部複製到htdocs資料夾,如下所示(點圖可放大):

MAMP網站根目錄

MAMP的Apache伺服器的預設埠號是8888(參閱書本第一章1-13頁說明),因此連結到本機MAMP網站的網址是:

因此,底下的網址將能開啟MAMP內建的phpMyAdmin管理工具:

開啟phpMyAdmin之後,您可以從Language(語言)下拉式選單選擇「中文 – Chinese traditional」,切換成正體中文操作界面。

伺服器和PHP的組態設定檔都存放在conf資料夾的子資料夾,例如,Apache的組態設定檔位於/Applications/MAMP/conf/apache/httpd.conf,詳細的設定說明請參閱書本第一章1-15頁

22 thoughts on “使用MAMP在Mac OS X上安裝Apache、MySQL與PHP

  1. :oops:
    真是好文章阿!小妹我一直很頭疼怎麼在mac上架站

    這真的無疑是給我很大的幫助阿!
    不過小妹我有幾個小疑問想請教您
    首先您所出版的「碼上就會:Dreamweaver CS3 PHP、MySQL與AJAX」
    是只有針對win os撰寫的嗎?還是也有含括mac os呢?

    再來就是,小妹我按照您文章所教授的步驟
    成功的將mamp套件安裝並啟動成功,我的phpMyadmin和apache也都有正常啟動
    但是,您文中有提及所要展示的頁面必須托放置/Applications/MAMP/htdocs之中
    就可正常測試網頁,但是我依照步驟操作,可是我的網頁一直無法正常顯示
    不知道是啥原因呢?
    我測試的URL是http://localhost/index.php

    幾個問題希望能得到您的回應
    謝謝:grin:

  2. hi kai:

    Dreamweaver軟體和PHP語言,並沒有Windows和Mac的區別,只是Adobe沒有推出Mac的中文版。書籍內容以Windows版本做介紹,所以截圖都是中文畫面,只有這個差別而已。

    MAMP的Apache的預設埠號是8888,所以首頁的網址是:http://localhost:8888/index.php

  3. 你好
    請問一下我在瀏覽php網頁時顯示正常..
    但是mysql瀏覽資料庫資料時都顯示亂碼!!怎麼會這樣!!
    我的MySQL charset: UTF-8 Unicode (utf8)
    我的MySQL connection collation: utf8_unicode_ci
    我的網頁檔案編碼 utf8
    phpMyAdmin 資料表編碼 utf8_unicode_ci

    請問這是哪邊出錯!!?
    3Q!!

  4. 看了這篇詳細的文章!
    想說終於可以在我的小白上面架站了!
    但在第二個步驟就stuck了!
    http://localhost/~您的用戶名稱
    我輸入後但是畫面出現這個–>Forbidden

    You don’t have permission to access /~sen/ on this server.
    所以也無法向下步驟邁進!請大大指教!!!

  5. hi sen:

    發生這個問題的原因應該是你的網站根目錄沒有存放首頁文件。
    請在你的網站文件夾裡面存入一個 index.htm 檔,再測試看看。

    jeffrey

  6. 如果你的系統是Mac OS X 10.4,在 /etc/httpd/users/目錄底下,會有一個 [你的用戶名稱].conf檔。檔案的內容如下(請將 [ 和 ] 替換成小於和大於符號):

    [Directory “/Users/你的用戶名稱/Sites/"]
    Options Indexes MultiViews
    AllowOverride None
    Order allow,deny
    Allow from all
    [/Directory]

    若系統是Mac OS X 10.5 (Leopard),請在 /private/etc/apache2/users 路徑底下自行建立一個 [你的用戶名稱].conf檔,這樣應該可以解決個人網站的權限問題。

  7. hi
    請問一個問題
    安裝MAMP沒有問題
    但在設定dreamweaver的MySQL connection時
    卻顯示找不著任何的database
    出現一個視窗顯示可能原因為no testing server running
    不知可否指點迷經~

  8. ㄟ~ 解決了
    不過很奇怪的是
    MySQL server 先不輸入資料
    只輸入user 與 password 就不會有問題
    就能找到database
    但要按下ok時 又出現對話方塊要我輸入MySQL server
    頗詭異

  9. 您好!

    谢谢您的讲解!

    有个问题想要请教,我在安装完MAMP之后,点击“WebStart”按钮,显示Error: Could not connect to MySQL server!;点击“launch phpMyAdmin”,显示“
    #1045 – Access denied for user ‘root’@’localhost’ (using password: YES)
    phpMyAdmin 尝试连接到 MySQL 服务器,但服务器拒绝连接。您应该检查配置文件中的主机、用户名和密码,并确认这些信息与 MySQL 服务器管理员所给出的信息一致。”

    希望能得到您的帮助!

    谢谢!

  10. 从错误信息看来,是MySQL的管理员(root)密码错误。我现在已经将Windows和Mac平台上的Apache + MySQL + PHP套件,全都改用成 XAMPP 了,提供你叁考。

    have fun!
    jeffrey

  11. 板主你好~~
    我安裝了MAMP一下~~大部份都ok
    只有開啟MAMP內建的phpMyAdmin管理工具有問題耶~~
    是什麼問題呢?
    謝謝


  12. 佢本身設定左係8889
    我見都用到所以無改到佢
    但佢只會叫我直接下載下來,不能正常好像網頁般觀看

  13. 可能是web server的php模組沒有正確設定,所以server不知道如何處理php,建議先用xampp之類的簡易安裝程式測試看看。

  14. 你好,不知怎樣我用dreamweaver駁database出現了這段字:
    your php server doesn’t have the mysql module loaded
    or you can’t use the mysql(p)connect functions
    我preview 畫面正常不過駁不到database 我用mamp thx

    1. hi ellen:

      根據google給的答案,請找到php.ini檔案,去掉其中這一行前面的分號:

      ;extension=php_mysql.dll

      存檔後,重新起動網站伺服器。

      good luck!
      jeffrey

發表迴響

你的電子郵件位址並不會被公開。 必要欄位標記為 *