• twitter image
  • facebook image
  • youtube image
  • linkedin image
Language: CMS Made Simple Czech CMS Made Simple France CMS Made Simple Hungary CMS Made Simple Russia CMS Made Simple Netherlands

All times are UTC




Post new topic This topic is locked, you cannot edit posts or make further replies.  [ 4 posts ] 
Author Message
 Post subject: pcre.backtrack_limit
PostPosted: Sat Aug 07, 2010 12:43 pm 
Diesen Wert in der Servereinstellung bzw. PHP Einstellung hat es in sich und ihn gibt es erstb ab PHP 5.2 .

Der Standardwert ist 100.000, was nichts weiter bedeutet, da alle PHP preg_XXXXX Funktionen dieses Limit einsetzen.

Wird das Limit überschritten ergibt sich ein Abpfiff und daraus können sich ungeahnte weitere Dinge entwickeln.

Das aber wird den normalen Nutzer nicht treffen.
Es gibt aber Kandidaten, die haben den Feldtyp von den Inhaltstabellen geändert um sehr lange Texte verwenden zu können , die könnten in's Bein gekniffen werden.

Wie hoch ist aber denn tatsächliche Wert ?

Das kann man damit testen:

Code:
<?php
echo (int)ini_get( 'pcre.backtrack_limit' );
?>


Welche Folgen hat es praktisch ?

preg_XXXX Funktionen werden an vielen Stellen eingesetzt, ganz besonders aber Smarty.
Smarty schlägt da mit voller Wucht zu, da die Inhalte nun gebündelt auftreten.

Hat jemand also einen Gesamtinhalt bestehend aus allen HTML und sonstigen Inhalten von mehr als 100000 Bytes, dann verarbeitet Smarty den Inhalt und setzt preg_XXX Funktionen ein und erzeugt einen Abpfiff.

Bei sich rekursiv aufrufenden Funktionen kann das sogar noch erheblich schneller gehen, d.h. mit erheblich geringeren Volumen.

Hat man ungeklärte Abbrüche dann

1. den Test ausführen
2. den Wert erhöhen

Der Wert in der PHP.INI erhöht, wer das nicht kann, darf es mit  einem Eintrag z.B. als erste Zeile in der index.php versuchen:

ini_set('pcre.backtrack_limit', 1000000);

wobei zu empfehlen ist, den Wert nicht gleich auf 1 Mio zu setzen, sondern moderat anzuheben um den Erfolg zu testen.

Wer ini_set nicht einsetzen kann, dem bleibt nur der Weg den Inhalt einer dicken Seite auf verschiedene Unterseiten zu verteilen.

Keine Panik - den Normalanwender wird es kaum treffen, es geht hier um die speziellen Anwender.


Top
   
 
Share On:
Share on Facebook Share on Twitter Share on Google+
 Post subject: Re: pcre.backtrack_limit
PostPosted: Sat Aug 07, 2010 9:12 pm 
Guter Tipp - ein Grund mehr, preg_xxx nur sparsam einzusetzen und anstatt dessen andere (teilweise performantere) Funktionen zu verwenden.


Top
   
 
Share On:
Share on Facebook Share on Twitter Share on Google+
 Post subject: Re: pcre.backtrack_limit
PostPosted: Tue Aug 10, 2010 5:14 am 
Offline
Forum Members
Forum Members
User avatar

Joined: Mon Apr 30, 2007 1:46 pm
Posts: 210
Location: Dortmund
Hallo,

hänge mich mal hier mit rein - wir haben zwar keine Abbrüche, aber in letzter Zeit läuft immer wieder der Speicher voll und bringt den kompletten VServer von uns zum Stillstand.
Bei uns laufen einige Installationen auf einem Virtual Server Managed L bei Hosteurope. Eine davon ist eine Gedichte-Seite (hab ich hier schon öfter erwähnt). Diese hat nicht nur viele Texte sondern teilweise auch recht lange Texte, weshalb ich die Größe des Content-Feldes in MySQL von "text" auf "longtext" gesetzt habe. Kann das Vollaufen des Speichers auch damit zusammenhängen? Bei uns ist nämlich auch der Standardwert von 100000 gesetzt.

Jan


Top
  Profile  
 
Share On:
Share on Facebook Share on Twitter Share on Google+
 Post subject: Re: pcre.backtrack_limit
PostPosted: Thu Aug 12, 2010 12:46 pm 
Quote:
Kann das Vollaufen des Speichers auch damit zusammenhängen?


Das kann durchaus sein. Nun habe ich selbst keine solchen dicken Inhalte, wenn ich aber im Test mal künstlich einen solchen erzeuge erfolgt absemmeln.

Kann man ja leicht probieren einfach mal erhöhen.


Top
   
 
Share On:
Share on Facebook Share on Twitter Share on Google+
Display posts from previous:  Sort by  
Post new topic This topic is locked, you cannot edit posts or make further replies.  [ 4 posts ] 

All times are UTC


Who is online

Users browsing this forum: No registered users


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
A2 Hosting