-1
做Drupal的更新後,我得到這個錯誤 - 我相信,以前的開發(愚蠢)編輯的核心:致命錯誤:用盡134217728個字節允許內存大小 - Drupal的
Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 74 bytes) in /home/readyby2/public_html/includes/common.inc on line 1408
我相信它有話做更新的意見模塊。它發生在管理員>>人物>>個人資料
任何潛在客戶都可以給我嗎?
我檢查我的common.inc,這裏的線1408和周邊:
function _filter_xss_split($m, $store = FALSE) {
static $allowed_html;
if ($store) {
$allowed_html = array_flip($m);
return;
}
出錯行似乎是$allowed_html = array_flip($m);
下面是完整的功能:
function _filter_xss_split($m, $store = FALSE) {
static $allowed_html;
if ($store) {
$allowed_html = array_flip($m);
return;
}
$string = $m[1];
if (substr($string, 0, 1) != '<') {
// We matched a lone ">" character.
return '>';
}
elseif (strlen($string) == 1) {
// We matched a lone "<" character.
return '<';
}
if (!preg_match('%^<\s*(/\s*)?([a-zA-Z0-9]+)([^>]*)>?|(<!--.*?-->)$%', $string, $matches)) {
// Seriously malformed.
return '';
}
$slash = trim($matches[1]);
$elem = &$matches[2];
$attrlist = &$matches[3];
$comment = &$matches[4];
if ($comment) {
$elem = '!--';
}
if (!isset($allowed_html[strtolower($elem)])) {
// Disallowed HTML element.
return '';
}
if ($comment) {
return $comment;
}
if ($slash != '') {
return "</$elem>";
}
// Is there a closing XHTML slash at the end of the attributes?
$attrlist = preg_replace('%(\s?)/\s*$%', '\1', $attrlist, -1, $count);
$xhtml_slash = $count ? ' /' : '';
// Clean up attributes.
$attr2 = implode(' ', _filter_xss_attributes($attrlist));
$attr2 = preg_replace('/[<>]/', '', $attr2);
$attr2 = strlen($attr2) ? ' ' . $attr2 : '';
return "<$elem$attr2$xhtml_slash>";
}
我在給定的代碼中沒有看到任何內存泄漏。如果您確定Drupal框架本身存在問題,請備份您的項目並重新安裝。順便說一句,不要用正則表達式解析html。 – Leri
註釋掉'static $ allowed_html',你的問題可能會消失,靜態變量可能只是持有太多的信息 – Aknosis
它只是在試圖運行客戶端設置的自定義鏈接時。 –