Tag: mamp

How to override the path of PHP to use the MAMP path?

Posted by – August 4, 2014

最近在學習 Laravel Framework 的使用,現在 PHP 許多 Library、Framework 都改用了 composer.phar 這個套件管理功能。

其中許多管理功能需要在 command line 輸入指令,但是 Mac 其實也有內建 PHP,卻缺了許多常用的套件。

與其去補安裝套件,不如改用 MAMP 的 PHP 還比較省事。

在 ~/.bash_profile 加入以下指令:

export PATH="/Applications/MAMP/bin/php/php5.5.3/bin:$PATH"

這樣使用 PHP 指令就會自動選用 MAMP 下的版本和套件,其中紅字請改為您使用的版號。

Disable Cache for PHP 5.5.3 in MAMP

Posted by – January 3, 2014

前些時間接手一個已經上線的案子,進行改版作業。從 Git 上把 code 拉下來,執行一下就... 爆了。發現同事用了相當新的 PHP 語法。我本機的開發環境是 PHP 5.2.x,無法執行。

馬上想到 MAMP 可以切換成新的版本,切換成 5.5.3 問題就解決了。

MAMP PHP version switch More

Run a PHP script from the command line with MAMP

Posted by – August 8, 2013

我在 Mac 上開發 PHP 一直是用 MAMP 這個好用的 App。不過如果碰到需要在 Terminal 下以指令方式執行 PHP 程式就有點麻煩。

MAMP 裡的 php 路徑頗長.... 像這樣...

/Applications/MAMP/bin/php/php5.3.6/bin/php -v # 查詢 PHP 版本

所以還是來修改一下 ~/.bash_profile 吧。如果沒有這個檔案,自己建一個。

在裡面加入這一行…

export PATH=/Applications/MAMP/bin/php/php5.3.6/bin/:$PATH

存檔後離開。

在 Terminal 下輸入

source ~/.bash_profile

會重讀設定檔,然後剛才的修改就生效了。這樣以後要執行 PHP script 直接輸入 php 就可以了,方便許多。

Installing ionCube Loader on MAMP

Posted by – June 10, 2013

在幫客戶 debug 的時候注意到 SVN 裡一小部份程式碼居然被 ionCube 加密過了.... 加密後的程式碼丟到 SVN 是有個屁用啊。

算了,這不重要。重點是我的開發機變成也要可以執行 ionCube 才行。要在 Mac 上的 MAMP 下安裝 ionCube loader 還蠻簡單的,隨手筆記一下。ionCube 的 loader 是免費的,encoder 才要付費。

先到 Loaders for ionCube Encoded Files 下載對應的 loader。我的開發環境是 OS X (x86-64)。下載了 .zip 包,解開來有幾個檔案。

Unpacked ionCube Loader File

其中的數字是 PHP 的版本,例如 5.2, 5.3 等,_ts 是指 Thread Safety,MAMP 的 PHP 沒有 Thread Safety,所以選用一般版即可。如果不確定環境有沒有 ts,可以用 phpinfo 看一下。

建議將 loader-wizard.php 丟到 MAMP/htdocs 下面執行一下,會提示安裝路徑和是否安裝成功等訊息。

以我的環境來說,我是把 ioncube_loader_dar_5.3.so copy 到

/Applications/MAMP/bin/php/php5.3.6/lib/php/extensions/no-debug-non-zts-20090626/ioncube_loader_dar_5.3.so

接著打開 /Applications/MAMP/bin/php/php5.3.6/conf/php.ini,在 1085 行左右加上以下設定:

zend_extension="/Applications/MAMP/bin/php/php5.3.6/lib/php/extensions/no-debug-non-zts-20090626/ioncube_loader_dar_5.3.so"

注意:如果 php.ini 裡沒有出現 zend_extension,這行加在任一位置,否則,把它加在第一個 zend_extension 語句前。

存檔,重新啟動 server,再用 loader-wizard.php 檢查一下,確定 loader 安裝成功。

Install ionCube successfully

How to create MySQL configuration file (my.cnf) on MAMP?

Posted by – March 14, 2013

因為想修改 MySQL 的一些設定,卻遍尋不著 MAMP 的 my.cnf 寫在哪,後來才在一篇日文的教學裡找到蛛絲馬跡。

用以下指令可以找到 MAMP 裡的 .cnf,一開始並沒有出現 my.cnf,而是些預設的範本。

$ find /Applications/MAMP/ -name my*.cnf
/Applications/MAMP//Library/support-files/my-huge.cnf
/Applications/MAMP//Library/support-files/my-innodb-heavy-4G.cnf
/Applications/MAMP//Library/support-files/my-large.cnf
/Applications/MAMP//Library/support-files/my-medium.cnf
/Applications/MAMP//Library/support-files/my-small.cnf

接著用以下指令,會看到一大排資訊。

$ /Applications/MAMP/Library/bin/mysql --help

其中可以找到這麼一行... 這一行就是 MySQL 讀取 my.cnf 的順序。

Default options are read from the following files in the given order:
/etc/my.cnf /etc/mysql/my.cnf /Applications/MAMP/conf/my.cnf ~/.my.cnf

接著把我需要的設定寫在其中一個就可以了。為了方便記憶和下次再找檔案,我會建議寫在這裡。

/Applications/MAMP/conf/my.cnf

Enabling SSL on MAMP on OS X

Posted by – June 19, 2012

我習慣在本機上開發程式,做完初步測試後才會佈署到測試主機或正式主機。為此,有些要求使用 https 安全連線的頁面在本機就無法進入,所以才興起了在本機簽署一個憑證作為開發之用的念頭。因為步驟還蠻長的,做個筆記給未來的自己。

More