Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

MiqueiasBarros

Fatal error

Recommended Posts

Olá pessoal, baixei o wordpress br versão 3.2 e quando faço a instalação do banco de dados funciona normalmente, mais depois que ele connecta e tal com o banco de dados ele diz assim, "Começar a instalação" correto? Então quando eu clico em "Começar Instalação" ele dá um erro, este é o erro que ocorre

 

Fatal error: Out of memory (allocated 11272192) (tried to allocate 16 bytes) in /home/moisesvi/public_html/wp-includes/pomo/streams.php on line 86

 

E este aqui é o streams.php a linha é esta return str_split( $string, $chunk_size );

 

<?php
/**
* Classes, which help reading streams of data from files.
* Based on the classes from Danilo Segan <danilo@kvota.net>
*
* @version $Id: streams.php 406 2010-02-07 11:10:24Z nbachiyski $
* @package pomo
* @subpackage streams
*/

if ( !class_exists( 'POMO_Reader' ) ):
class POMO_Reader {

var $endian = 'little';
var $_post = '';

function POMO_Reader() {
	$this->is_overloaded = ((ini_get("mbstring.func_overload") & 2) != 0) && function_exists('mb_substr');
	$this->_pos = 0;
}

/**
 * Sets the endianness of the file.
 *
 * @param string $endian 'big' or 'little'
 */
function setEndian($endian) {
	$this->endian = $endian;
}

/**
 * Reads a 32bit Integer from the Stream
 *
 * @return mixed The integer, corresponding to the next 32 bits from
 * 	the stream of false if there are not enough bytes or on error
 */
function readint32() {
	$bytes = $this->read(4);
	if (4 != $this->strlen($bytes))
		return false;
	$endian_letter = ('big' == $this->endian)? 'N' : 'V';
	$int = unpack($endian_letter, $bytes);
	return array_shift($int);
}

/**
 * Reads an array of 32-bit Integers from the Stream
 *
 * @param integer count How many elements should be read
 * @return mixed Array of integers or false if there isn't
 * 	enough data or on error
 */
function readint32array($count) {
	$bytes = $this->read(4 * $count);
	if (4*$count != $this->strlen($bytes))
		return false;
	$endian_letter = ('big' == $this->endian)? 'N' : 'V';
	return unpack($endian_letter.$count, $bytes);
}


function substr($string, $start, $length) {
	if ($this->is_overloaded) {
		return mb_substr($string, $start, $length, 'ascii');
	} else {
		return substr($string, $start, $length);
	}
}

function strlen($string) {
	if ($this->is_overloaded) {
		return mb_strlen($string, 'ascii');
	} else {
		return strlen($string);
	}
}

function str_split($string, $chunk_size) {
	if (!function_exists('str_split')) {
		$length = $this->strlen($string);
		$out = array();
		for ($i = 0; $i < $length; $i += $chunk_size)
			$out[] = $this->substr($string, $i, $chunk_size);
		return $out;
	} else {
		return str_split( $string, $chunk_size );
	}
}


function pos() {
	return $this->_pos;
}

function is_resource() {
	return true;
}

function close() {
	return true;
}
}
endif;

if ( !class_exists( 'POMO_FileReader' ) ):
class POMO_FileReader extends POMO_Reader {
function POMO_FileReader($filename) {
	parent::POMO_Reader();
	$this->_f = fopen($filename, 'r');
}

function read($bytes) {
	return fread($this->_f, $bytes);
}

function seekto($pos) {
	if ( -1 == fseek($this->_f, $pos, SEEK_SET)) {
		return false;
	}
	$this->_pos = $pos;
	return true;
}

function is_resource() {
	return is_resource($this->_f);
}

function feof() {
	return feof($this->_f);
}

function close() {
	return fclose($this->_f);
}

function read_all() {
	$all = '';
	while ( !$this->feof() )
		$all .= $this->read(4096);
	return $all;
}
}
endif;

if ( !class_exists( 'POMO_StringReader' ) ):
/**
* Provides file-like methods for manipulating a string instead
* of a physical file.
*/
class POMO_StringReader extends POMO_Reader {

var $_str = '';

function POMO_StringReader($str = '') {
	parent::POMO_Reader();
	$this->_str = $str;
	$this->_pos = 0;
}


function read($bytes) {
	$data = $this->substr($this->_str, $this->_pos, $bytes);
	$this->_pos += $bytes;
	if ($this->strlen($this->_str) < $this->_pos) $this->_pos = $this->strlen($this->_str);
	return $data;
}

function seekto($pos) {
	$this->_pos = $pos;
	if ($this->strlen($this->_str) < $this->_pos) $this->_pos = $this->strlen($this->_str);
	return $this->_pos;
}

function length() {
	return $this->strlen($this->_str);
}

function read_all() {
	return $this->substr($this->_str, $this->_pos, $this->strlen($this->_str));
}

}
endif;

if ( !class_exists( 'POMO_CachedFileReader' ) ):
/**
* Reads the contents of the file in the beginning.
*/
class POMO_CachedFileReader extends POMO_StringReader {
function POMO_CachedFileReader($filename) {
	parent::POMO_StringReader();
	$this->_str = file_get_contents($filename);
	if (false === $this->_str)
		return false;
	$this->_pos = 0;
}
}
endif;

if ( !class_exists( 'POMO_CachedIntFileReader' ) ):
/**
* Reads the contents of the file in the beginning.
*/
class POMO_CachedIntFileReader extends POMO_CachedFileReader {
function POMO_CachedIntFileReader($filename) {
	parent::POMO_CachedFileReader($filename);
}
}
endif;

 

Espero que me ajudem....

 

Desculpe pelo DOUBLE-POST mais estou precisando de ajuda, alguém pode ajudar???

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você pode me indicar algum instalador de aplicativos??

Foi engraçado o que o amigo falou em cima, tipo todo cPAnel tem um instalador de aplicatios e com o nome que ele indicou abaixo "Fantastico" é por ele que você instala aplicativos como o WordPress e vários outros dependendo de sua empresa de hospedagem.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Foi engraçado o que o amigo falou em cima, tipo todo cPAnel tem um instalador de aplicatios

 

aonde esta a graça?

 

 

quem te falo que todo Cpanel só tem o Fantastico?

 

já ouviu falar no Softaculous?

 

posso citar mais nomes de instaladores se quiser...

 

http://demo.softaculous.com/

 

esse tipo de erro acontece quando o limite de memória do servidor foi alcançado, faltando assim memoria disponível para carregar os arquivos do sistema.

 

Isso normalmente ocorre quando temos muitos plugins ativos, consumindo a memória do servidor

 

para resolver esse problema tente fazer isso;

 

acesse o ftp e adicione a linha abaixo no arquivo /wp-config.php

 

define(‘WP_MEMORY_LIMIT’, ’64M’);

 

veja se ajuda :)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não era para ter levado para o lado negativo e ficado bravo, foi engraçado o jeito que tu falou, é que você dizer "instala pelo fantastico que é muito bom" e dar um tiro no escuro, como saber se o servidor dele tem ou nao o fantástico habilitado, e em nenhuma parte eu disse que todo cpanel só tem o fantástico, mas todo cpanel tem o fantástico como eu disse, porque é um padrão do sistema. Poderia ter explicado, só dizer "instala pelo fantastico" é um tiro daqui a talvez amta o bin bin la no mar da arábia.

 

"Isso normalmente ocorre quando temos muitos plugins ativos, consumindo a memória do servidor"
ele está instalando o wp, não tem plugin ativo ainda..
"Olá pessoal, baixei o wordpress br versão 3.2 e quando faço a instalação do banco de dados funciona normalmente"
Como esse tópico http://wordpress.org/support/topic/memory-exhausted-error-in-admin-panel-after-upgrade-to-28 que você deve ter pego o define diz existem vários motivos que podem ocorrer, não só plugin.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Miqueias.. não é querendo te desanimar nao..

 

Tive o mesmo problema num site que fiz (inclusive postei duvidas relacionadas a ele aqui a pouco tempo rsrs), e tive que TROCAR de hospedagem... exatamente..

 

Tentei de tudo.. isso é um erro fatal que acontece qdo a sua aplicação PHP excede o limite estipulado pelo php.ini..

 

Mas vamos as "gambiarras" (lembrando q nao é o indicado a fazer.. o certo é sempre tentar otimizar o fluxo de dados da sua aplicação pra gastar menos memoria)

 

Voce pode tentar mudar no php.ini no apache (No caso você tem q falar com a administração da sua hospedagem.. geralmente o cpanel nao permite alteração do php.ini)

Mais ou menos na linha 458:

 

memory_limit = XXM (vai ter um valor la... bota 128M, sei la)

 

Ou... se antes de pedir pro admin mudar, você quiser testar local.. tem uma função PHP q faz isso.. é so voce colocar nos scripts q tao apresentando o erro pra ver se resolve..

 

ini_set( string $varname , string $newvalue ) , ou seja ini_set ( "memory_limit" , "32M" );

 

 

Mas como eu disse.. isso sao gambiarras..

 

geralmente o servidor pesa por causa de painel mal instalado, com funções a rodo desnecessariamente..

 

Pede pra ele mudar o php.ini pra um valor mais alto..

 

Talvez resolva.. :joia:

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.