我已經在Mac上編輯了每個單獨的 php.ini
(至少所有通過“ locate”找到的內容),但似乎仍然無法增加 memory_limit
PHP指令。
我正在使用MAMP PRO並在終端中運行PHP腳本。
如何解決此問題?
我已經在Mac上編輯了每個單獨的 php.ini
(至少所有通過“ locate”找到的內容),但似乎仍然無法增加 memory_limit
PHP指令。
我正在使用MAMP PRO並在終端中運行PHP腳本。
如何解決此問題?
運行以下命令而不是猜測您需要更改哪個php.ini:
php -r'phpinfo();' | grep'php.ini'
即使我使用MAMP PRO,默認情況下,我的命令行PHP命令也不使用其PHP副本執行。就我而言,它表示文件位於 /etc/php.ini
找到文件後,請按照所有其他答案中的說明進行操作,以達到memory_limit設置:
memory_limit = 256M
來自 http://drupal.org/node/66187(drupal可能與您的需求無關,但他們的網站提供了很好的解釋-希望為您提供來源,並歸功於
默認情況下,MAMP將腳本可以使用的內存限制設置為8MB,這是PHP默認設置。查看PHP的php.ini推薦文件,此內存限制通常設置為128MB。要調整此數量,請在文本編輯器中打開php.ini文件,然後更改以下行(大約在232行):
memory_limit = 8M;腳本可能消耗的最大內存量(8MB)
PHP.ini文件位置:
/Applications/MAMP/conf/php4/php.ini
/ Applications / MAMP / conf / php5 / php.ini
在MAMP PRO中,請勿直接更改文件,因為它將在每次服務器啟動時重新創建。請編輯適當的模板(菜單文件>編輯模板> ...)。
即使具有更大的PHP內存限制,嘗試將大型Drupal數據庫導入MySQL也會遇到超時錯誤。這些問題將在其他地方詳細討論緩存和視圖緩存。通常,解決方案是在將數據庫導入MySQL或從MySQL導出數據庫之前清空Drupal緩存。
對我來說,我執行了以下操作:
編輯 /Applications/MAMP/conf/php5.4.4/php.ini
和
php.ini.temp
為:
memory_limit = 128M;腳本可能消耗的最大內存量(8MB)
然後在finder中,僅使php.ini和php.ini.temp對所有用戶只讀。這樣,MAMP不能用默認文件覆蓋它。重新啟動服務器並檢查您的phpinfo。
混亂一段時間後,發現對我有用的東西:
#備份原始php.inisudo mv / usr / bin / php /usr/bin/php.bkp#創建來自/ usr / bin目錄中MAMP的php.ini的符號鏈接#(我使用5.2,更改5.3的路徑)sudo ln -s /Applications/MAMP/bin/php/php5.2.17/bin/php / usr / bin / php
在那裡!
快速而骯髒的方法是在調用腳本時將其設置為參數。
即:
php -d memory_limit = 512M myScript.php
如果在Mamp Pro中啟用了Opcache,將無法獲得正確的設置...停止它,然後重新啟動Mamp Pro服務器...