web-dev-qa-db-ja.com

致命的なエラー:1561行目のpublic_html/wp-includes/rewrite.phpで許容されている146800640バイトのメモリサイズ(57バイトを割り当てようとした)

私はこれがどのように/なぜ起こったのか知りません。私は週末に私のサイトに取り組んでいました、そしてそれは大丈夫でした。今朝オフィスに入ったとき、私はサイトに行き、これを手に入れました:

Fatal error: Allowed memory size of 146800640 bytes exhausted (tried to allocate 57 bytes) in public_html/wp-includes/rewrite.php on line 1561

解決策を提供する記事を検索して見つけましたが、どれも私にとって役に立ちませんでした。私が気づいたことは影響を受けるファイルは通常それぞれの場合で異なることです。たまたま "rewrite.php"ファイルです。それは助けになるかもしれません。それ以外はイムは困惑した。

お客様からの苦情が来ているのを私は知っています。うまくいけば、私はすぐにそれを直します。

何がこれを引き起こしているのでしょう、それで私はそれを繰り返さないことを知っています( if 私はこれを引き起こしました)。誰もがこれを手伝ってくれる?

UPDATE

私は64Mにwp-config.phpのメモリ制限を定義し、エラーの行参照は1561ではなく836になりました。

これは836行目のコードです。

if ( is_array( $uris ) ) {
            foreach ( $uris as $uri => $pagename ) {
                $this->add_rewrite_tag('%pagename%', "($uri)", 'pagename=');
                $rewrite_rules = array_merge($rewrite_rules, $this->generate_rewrite_rules($page_structure, EP_PAGES));
            }
        }

UPDATE

問題を解決しました。問題はどういうわけかパーマリンク設定に関連していました。 ImはワードプレスのためのCouponPressテーマを使用しています。ほとんどの解決策(php.ini、wp-config.phpなど)で提案されているように、メモリ制限を増やした後、私は単純にパーマリンクをデフォルトに変更し、それから私のカスタムパーマリンクに戻しました。すべてが正常に戻ったようです。これはなぜ起こったのでしょうか。何も思いつきません。突然エラーは月曜日の朝に起こりました、そして、みんなは頭がおかしい(怒っていました)。 I _は_ がこれを引き起こした理由を知りたいので、可能であれば将来的にそれを防ぐことができます。実際の解決策を手助けしてくれた皆さんに感謝します。

1
user1893

このような限られた情報を使って、ここで誰かがあなたのためにできることは本当にありません。それは明らかにあなたの最近の変更の範囲内のものです。

あなたがバージョン管理システムを使うなら(みんなが本当にそうするように)、私は変更をロールバックして、そしてそこからこのエラーの原因となっていた変更をゆっくりと再実装しそれを取り除きます。

2

致命的なエラー:使用可能な146800640バイトのメモリサイズ(57バイトを割り当てようとした)により、エラーメッセージで問題が明確になります。 phpメモリ - あなたはリソースを使い果たしています。

あなたはphpメモリを増やすことができますか、あなたはあなたのためにそれを増やすようにホスティングプロバイダに依頼することができます。

Phpメモリを増やすにはいくつかの方法があります。あなたのために働くものもあれば、そうでないものもあります。最初の方法がうまくいかない場合は、次の方法を試すことができます。

1.)wp-config.php - define('WP_MEMORY_LIMIT', "256M");でメモリ制限を設定する

2.)メモリ制限PHP .htaccessファイル内のディレクティブ - php_value memory_limit 256Mディレクティブの設定

3.)php.iniのメモリ制限の変更 - memory_limit = 256Mの設定

4.)ランタイム中のPHPメモリ制限の設定 - ini_set('memory_limit', "256M");ディレクティブの設定

あなたのホスティングプロバイダに尋ねる - 上記のどれもあなたのphpメモリを増やすことにならないならば、あなたのホスティングプロバイダに尋ねてください。

Info.phpファイルを作成してphpinfo();を追加するメモリ制限を確認するには、domain.com/info.phpファイルを開きます。

0
Mariethadp