Mailinglist Archive: opensuse-de (4880 mails)

< Previous Next >
Re: Apache2, phpMyAdmin u. MySQL
  • From: Christian Boltz <cb.suse@xxxxxxxxxxxxxxxxxx>
  • Date: Fri, 21 Nov 2003 00:41:43 +0100
  • Message-id: <200311202352.51659@xxxxxxxxxxxxxxx>
Hallo Gerald, hallo Leute,

Am Donnerstag, 20. November 2003 09:28 schrieb Gerald Engl:
> Hallo Christian
>
> Christian Boltz wrote:
> > Hallo Gerald, hallo Leute,
> >
> > Am Mittwoch, 19. November 2003 12:44 schrieb Gerald Engl:
> >>[diverse Config-Optionen für Apache2 & co, passt soweit]
> >>
> >>
> >>In der /etc/php.ini ggf. :
> >>
> >>register_globals = On
> >
> > NEEEEEIIIIIIIIINNNNNNNNN!!!!!!!!!!!!!!
>
> Aua, meine Ohren schmerzen. Du mußt nicht gleich schreien.

Sorry, aber das musste sein. Vor allem, da Du es ja so "grundsätzlich"
empfohlen hast ;-)

> > Schreib Deine PHP-Scripte so, dass sie auf $_GET, $_POST usw.
> > zugreifen. register_globals ist nicht ohne Grund seit einigen
> > PHP-Versionen von Haus aus abgeschaltet - bei unsicher
> > geschriebenen Scripten (nicht initialisierte Variablen) kann man
> > sich einige Sicherheitsprobleme einhandeln!
>
> Da hast Du recht; Das steht ja auch deutlich genug in der php.ini.
>
> Ich denke, daß man es fürs _Testen_ durchaus vertreten kann,

Fürs Testen ist es vertretbar, soweit es darum geht, die grundsätzliche
Funktionsfähigkeit eines (alten) Scripts zu sehen.

Beachte aber bitte: Testen != Programmieren

Sobald man irgendwas an den PHP-Scripten ändert, sollte register_globals
wieder aus sein. Wem das Umschalten zu mühsam ist, der sollte u. g.
verzeichnisspezifische Aktivierung verwenden. Als Verzeichnisname
bietet sich dann $docroot/defekt an *g*

> "register_globals" in der php.ini zu verwenden.
>
> Oft genug tritt sonst folgender Fall auf: Alte Skripte laufen nicht,
> da die Variablen nicht initialisiert sind. Folglich wird stundenlang
> der Fehler in der Konfiguration von Apache gesucht.

Nö. Da findet sich direkt im Browser [1] eine ganze Latte
Fehlermeldungen a la "Undefined Variable: xyz in test.php line 20". Bei
entsprechender Config landen diese Meldungen auch im Errorlog
(log_errors = on). Und schon sieht man, dass das alte Script noch
unsauber ist ;-)

Diese Gesprächigkeit ist übrigens einer der Vorteile von
error_reporting = E_ALL - hatte ich in meiner gestrigen Mail ja auch
geschrieben.

Ach so, auf einem Produktivsystem sollte man display_errors = off
setzen, damit _nur_ ins ErrorLog (s. o.) geschrieben wird und nicht in
die Ausgabe, die der Browser bekommt.

> Hinterher kann/sollte/muß man sich natürlich Gedanken machen, wie
> man die Sache "sauber ans laufen" bekommt.

Das auf jeden Fall - deshalb hab ich es gern von Anfang an sauber ;-)
[2]

> > So, jetzt zum Problem "ich habe aber noch alte Scripte..."
> > Man kann register_globals auch spezifisch für ein Verzeichnis
> > aktivieren, wenn ein altes Script es unbedingt erfordert:
> > <Directory /bloedes/altes/script>
> > php_flag register_globals on
> > </Directory>
>
> Die wesentlich bessere Lösung. ;-)
>
> > Die beste Lösung für das "ich habe aber noch alte
> > Scripte..."-Problem ist übrigens Rattis PraktiScript: "He,
> > Praktikant! Bis Montag müssen die Scripte mit register_globals =
> > off sauber laufen!"
>
> Das meinst Du nicht wirklich ernst.

Nö, nicht wirklich ;-)
Irgendwie habe ich da einen dicken Smiley vergessen. Hier ist er:
;-)))))

> Würde ein sehr schlechtes Licht
> auf deine Geisteshaltung werfen. Aua, Aua, Aua. ;-)

Wie gesagt: Ein wenig Spaß muss sein.
Außerdem habe ich keinen Praktikant ;-)) und beruflich nix überhaupt nix
mit Web-Programmierung zu tun.


Gruß

Christian Boltz

[1] bei mir sogar deutlich sichtbar gelb hinterlegt - /etc/php.ini:
error_prepend_string = "<span style='background-color:#ffff00;'>"
error_append_string = "</span>"

[2] Ich weiß, wovon ich rede, ich habe noch ein paar "Jugendsünden" zu
überarbeiten. Hätte ich nur damals schon register_globals=off
gehabt, es würde mir viel Arbeit ersparen. Naja, immerhin sind es
überall die gleichen Variablen, da reicht eine include ;-)
--
Und als nächste dürfen Querschnittgelähmte spammen, Blinde dürfen meinen
Server aufmachen, und wer als Kind im Ostblock aufgewachsen ist darf
HTML-Mails schreiben? Super. Ich hatte mal Mittelohrentzündung, das
sollte reichen, um Outlook benutzen zu dürfen? [Ratti in suse-linux]


< Previous Next >
Follow Ups