web-dev-qa-db-ja.com

php.ini以外に、他にどのようなPHP memory_limit制限があるのでしょうか?

管理された専用サーバーでいくつかの奇妙なメモリ制限の問題に直面しており、サーバー管理者がこれを修正するために多くの時間を費やしました。 phpinfo()は、上書きされた正しいmemory_limit値を表示しています。 drushを使用して_drush en module_またはビューの一括操作を実行する場合を除いて、すべてがクールです。誰かがこれを以前に経験したことがある場合、これを修正するために必要な手順を私たちと共有していただければ幸いです。

私のphp.iniでは:_memory_limit = 256M ;_

Sites/default/settings.php:ini_set('memory_limit', '256M');

1つのエントリでViews Bulkd操作を実行した後のWSODメッセージ:Fatal error: Out of memory (allocated 131334144) (tried to allocate 5 bytes) in /public_html/includes/cache.inc on line 401 Memory used at: devel_boot()=5.02 MB, devel_shutdown()=82.06 MB, PHP peak=82.25 MB.

SSHでは、drush cliを使用します。 _drush en languageassign_を実行した後:The following extensions will be enabled: languageassign Do you really want to continue? (y/n): y

Fatal error: Out of memory (allocated 76021760) (tried to allocate 72 bytes) in /public_html/sites/all/modules/views/includes/base.inc on line 84

_Drush command terminated abnormally due to an unrecoverable error. [error]_

Error: Out of memory (allocated 76021760) (tried to allocate 72 bytes) in /public_html/sites/all/modules/views/includes/base.inc, line 84

4
Logi

Memory_limitを設定できるもう1つの場所は、.htaccessファイルです。 Drushについては、通常は/etc/php5/cli/php.iniにあるcli php.iniファイルも確認してください。

Memory_limitが正しく設定されているかどうかを確認するには、次のことを試してください。

drupalをWebサーバーから実行すると、admin/reports/status/phpにアクセスしてこれを実行できます

Drushの場合、次のコマンドを実行してphp設定を確認できます:php -i | grep memory_limit

1
klaasvw

.htaccessファイルに「RLimitMem 128000000」を含めてみてください。

1
sympathetic

設定でメモリ制限を設定します。 ini_set( 'memory_limit' '256M')を使用したphpファイル。また、vboは操作を実行するためにより多くの時間を必要とするため、phpの実行時間を確認する必要があります。

0
Prem Patel

init_setが有効になっていて、設定をその値に変更できますか?

ほとんどの共有/専用サーバーには、一部の設定に制限があるか、ini_setコマンドを無視します

0
PartySoft