phpMyAdmin + Suhosin

filewalker

Registered User
Hi,

phpMyAdmin 3 beschwert sich über den Suhosin-Patch in PHP5.
Laut Dokumentation müssen die Werte namens "suhosin.request|get|post.max_*" erhöht werden.

Folgende Parameter sind bei der Demosite unterschiedlich zu meiner Installation (Debian):
Code:
suhosin.post.max_value_length = 1000000;
suhosin.post.max_vars = 1000;
suhosin.request.max_value_length = 1000000;
suhosin.request.max_vars = 1000;

Nur meckert phpMyAdmin nach dem Hochsetzen dieser Variablen weiterhin über Suhosin. Welche Daumenschrauben von Suhosin muss man denn noch lockern??

Gruß
filewalker
 
Schau doch mal in dein Apache Error Log. Da Steht drin was Suhosin nicht gefällt. :rolleyes:

Guter Tip! :rolleyes: Abgesehen davon, dass im Errorlog erst während des laufenden Betriebs Meldungen von Suhosin auftauchen werden. PMA muss mit ini_get() o.ä. die bemängelten Parameter abfragen; leider sind diese aber nicht dokumentiert (s.o.)...

Hat denn jemand erprobte Suhosin-Einstellungen parat?
 
Suhosin funktioniert ja auch nur "im laufenden Betrieb". ;)
Wenn PMA an Suhosin Limits anstößt, wird das geloggt. Der PMA ist schließlich auch nur ein PHP Script wie jedes andere auch.

Ich hab folgende Änderungen drin. Allerdings beziehen die sich auch auf andere Web-Anwendungen. Für den PMA wirst du nicht alle anpassen müssen.
Code:
suhosin.request.max_vars = 1000
suhosin.request.max_value_length = 4000000
suhosin.get.max_value_length = 2500
suhosin.post.max_vars = 1000
suhosin.post.max_name_length = 128
suhosin.post.max_value_length = 128000

Aber wie bereits gesagt, was du genau anpassen musst, steht im Log.
 
Gut, dann decken sich die "betroffenen" Limits schonmal. Bleibt noch die Frage nach der richtigen Obergrenze... (Die findet sich wohl erst, wenn irgendein Benutzer mal ein Join über 25 Tabellen abschickt. ;) )

In der main.php von PMA findet sich nur folgende Abfrage, ob Suhosin aktiviert ist:
PHP:
/**
 * Warning about Suhosin
 */
if ($cfg['SuhosinDisableWarning'] == false && @ini_get('suhosin.request.max_value_length')) {
    trigger_error(PMA_sanitize(sprintf($strSuhosin, '[a@./Documentation.html#faq1_38@_blank]', '[/a]')), E_USER_WARNING);
    }
 
Back
Top