2009-12-09 21 views
2

我運行wordpress 2.8.6作爲fcgi with safe_mode = on,在plesk9/centOS64上。 wordpress由installatron安裝。 php.ini正在從/etc/etc/php.ini讀取需要增加特定目錄的PHP memory_limit不是整個服務器

我需要增加php的memory_limit,因爲當我嘗試升級大多數WP插件時,我得到了很多mod_fcgid: stderr: PHP Fatal error: Allowed memory size of 33554432 bytes exhausted (tried to allocate 40961 bytes) in /var/www/vhosts/domain.com/httpdocs/wp-content/plugins/blah/blah.php on line X

以下說明,http://www.sakinshrestha.com/wordpress/fix-php-fatel-error-for-wordpress/,我想既創造一個php.ini和htaccess文件,並把它放在/var/www/vhosts/domain.com/httpdocs/wp-content/。它沒有工作。我沒有嘗試同時使用這兩個文件。每次創建這些文件時,apache都會重新啓動。

我以爲不能使用每個文件夾的設置可能是由於我使用fcgi的事實。我切換域使用mod_php。現在,當我嘗試升級插件時,我收到一個要求輸入FTP登錄信息的框(如http://www.chrisabernethy.com/why-wordpress-asks-connection-info/所示)。我輸入了正確的FTP登錄信息,但是當我點擊繼續時,服務器試圖讓我到下載 update.php。

所以現在我有兩個問題:

1)我如何增加memory_limit的該文件夾僅在FCGI?

2)我如何切換到mod_php並配置WP不需要FTP連接信息?我試着按照上面的最後一個環節的指令,但是<?php echo(exec("whoami")); ?>PHP Warning: exec() has been disabled for security reasons in /var/www/vhosts/domain.com/httpdocs/whoami.php on line 3阻止。我把safe_mode =關閉了,但它沒有改變。

arrrrghhhhh!

+0

在這一點上,我決定增加它只是爲了這個域,而不是目錄。但我真的不想爲整個服務器增加它... – Gaia

回答

3

從PHP 5.3開始,您可以使用.user.ini作爲每個用戶的配置文件。

最良好的祝願,
費邊

+0

請記住,您必須恢復爲(f)cgi。從文檔: – VolkerK

+0

事實上,「這些文件只能由CGI/FastCGI的SAPI處理」,這本來是他的第一個問題。我忘了指出。謝謝。 – halfdan

+0

我想通過域來更改它,而不是用戶。謝謝 – Gaia

2

爲什麼可溼性粉劑內容?嘗試在/var/www/vhosts/domain.com/httpdocs中創建一個php.ini。

另外,你編輯的wp-settings.php文件?這是默認設置:

if (!defined('WP_MEMORY_LIMIT')) 
    define('WP_MEMORY_LIMIT', '32M'); 
+0

謝謝。我把它改爲: '如果(定義( 'WP_MEMORY_LIMIT')!) \t定義( 'WP_MEMORY_LIMIT', '64M');' 但我仍然得到''mod_fcgid:標準錯誤:PHP的致命錯誤:讓記憶在/ var/www/vhosts /'中重新啓動apache後耗盡33554432個字節的大小(嘗試分配4344個字節)... 順便說一句,在wp-config或wp-settings中更改此值會更好嗎? – Gaia

+0

在wp-content中做了它,因爲只需要更多內存的腳本就在那裏。 – Gaia

+0

我不是PHP專家,但我仍然懷疑它是否以這種方式工作。也許別人可以解釋。我會想象一個PHP應用程序不會根據各個頁面的設置動態地改變內存分配,但是這會在應用程序加載時執行一次,這意味着它必須在您的應用程序根目錄中完成。 – cdonner

相關問題