Apache, Php, Documenttyp
Chris
- php
0 Thomas Luethi0 Chris0 Thomas Luethi
Hallo Durchblicker,
ich kasper damit nun zu lange rum! Muss Euch endlich mal fragen:
Wer sorgt dafür, dass bei eine total leeren (PHP-)Seite (also Datei vorhanden, ist aber nix drin, keine Ausgabe) der Dokumenttyp ausgegebn wird:
---------------------------------------------------
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=iso-8859-1"></HEAD>
<BODY></BODY></HTML>
---------------------------------------------------
Macht das der Apache oder macht das der PHP-Parser?
Wie kann ich dafür sorgen, dass das Gerüst immer eingestanzt wird, wenn es fehlt? Wo werden die Daten eingestellt?
CU
Chris
Hallo,
Weder Apache noch PHP liefern "inhaltlich" etwas aus,
das Du ihnen nicht ausdruecklich befohlen hast.
Das einzige, was sie automatisch ausliefern, sind gewisse HTTP-Header.
Welche, verraet Dir z.B. http://cgi.w3.org/cgi-bin/headers
Diese werden aber vom Browser nicht angezeigt.
Beispiele:
Content-Type: text/html; charset=iso-8859-1
Date: Tue, 28 Oct 2003 09:52:35 GMT
X-Powered-By: PHP/4.3.0
Wie kann ich dafür sorgen, dass das Gerüst immer eingestanzt wird, wenn es fehlt?
Schreibe Deine PHP-Seiten anstaendig.
_Du_ bist dafuer verantwortlich, was PHP ausgibt.
Gruesse,
Thomas
Hallo Thomas,
und woher kommt dann immer die Ausgabe des abgebildeten Gerüsts, wenn ich doch gar nix ausgeben lasse?
Das habe ich bisher bei alle Apache-Servern so gahbt. Und der aktuelle ist bestimmt schon der achte.
CU
Chris
Hallo,
und woher kommt dann immer die Ausgabe des abgebildeten Gerüsts, wenn ich doch gar nix ausgeben lasse?
Das habe ich bisher bei alle Apache-Servern so gahbt. Und der aktuelle ist bestimmt schon der achte.
Was rufst Du fuer eine Ressource auf?
Gibt es diese Ressource? Wenn ja, was ist sie? Ein PHP-Skript?
Haste mal 'ne URL?
Gruesse,
Thomas
Hallo Thomas,
Haste mal 'ne URL?
www.php-berater.de
Grüße
Chris
Hi,
Haste mal 'ne URL?
www.php-berater.de
hab mich geirrt. http://www.php-beratung.de
Hab den Auftrag, da ein CMS zu machen, und nur zufällig über das Kuriosum gestoloert. Nun wollte ich nicht sooo dumm aussehen, wenn ich zum Termin gehe.
Chris
Hallo,
http://www.php-beratung.de
Hab den Auftrag, da ein CMS zu machen, und nur zufällig über das Kuriosum gestoloert. Nun wollte ich nicht sooo dumm aussehen, wenn ich zum Termin gehe.
Ich vermute mal, die haben im Document Root eine index.php mit folgendem Inhalt:
<?php
echo "<html><body></body></html>";
?>
Irgend etwas muss doch im Document Root Verzeichnis sein.
Wenn dort nichts waere, saehe die Ausgabe wohl eher so aus:
http://www.ibiblio.org/pub/tmp/
Gruesse,
Thomas
Hallo Thomas,
Ich vermute mal, die haben im Document Root eine index.php mit folgendem Inhalt:
<?php
echo "<html><body></body></html>";
?>
Nee, die habe da nur stehen
----------------------
<?php #### php-beratung.de #### Startseite ####
@include(impressum.html);
?>
----------------------
Hab ich nämlich nach Vorgabe da selber hintransferiert und war baff erstaunt, dass plötzlich ne Ausgabe kam. Und impressum.html gibts für die Firma noch gar nicht. Die krieg ich erst. Muss auch impressum.txt heißen dann, ist aber egal für dieses Problem.
Ich denke, Andreas hat's ergründet. Liegt am Browser. Wenn der ein leeres Dokument bekommt, generiert er selber eins.
LG
Chris
Hallo,
Ich denke, Andreas hat's ergründet. Liegt am Browser. Wenn der ein leeres Dokument bekommt, generiert er selber eins.
Das war auch meine erste Idee.
Das <html><body></body></html> zeigte mir der Browser Mozilla an.
Und ich dachte, bei dem koenne man sich auf die Quelltext-Anzeige
verlassen, anders als bei seinem Grossvater (Netscape 4).
Ich dachte offenbar falsch...
Frueher habe ich sowas immer mit dem Mozilla Web Sniffer geprueft.
http://webtools.mozilla.org/web-sniffer/ - ist leider schon laenger ausser Betrieb.
Der zeigte sowohl den HTTP-Header als auch den Inhalt des
Dokuments Byte fuer Byte an und war sehr hilfreich bei derartigen
raetselhaften Fehlern.
Vielleicht kenn ja jemand einen guten Ersatz?
Gruesse,
Thomas
Hi,
hab mich geirrt. http://www.php-beratung.de
Mein Perl-Scriptchen sagt:
---------- BEGIN OF HTTP REQUEST ---------------------------------------------------
URL to GET: http://www.php-beratung.de
HTTP Result code: 200
---------- BEGIN OF HTTP HEADER ----------------------------------------------------
Connection: close
Date: Tue, 28 Oct 2003 11:11:26 GMT
Accept-Ranges: bytes
Server: Apache/2.0.40 (Red Hat Linux)
Content-Length: 0
Content-Type: text/html; charset=ISO-8859-1
Client-Date: Tue, 28 Oct 2003 11:18:54 GMT
Client-Peer: 80.190.104.2:80
Client-Response-Num: 1
X-Powered-By: PHP/4.2.2
---------- END OF HTTP HEADER ------------------------------------------------------
---------- BEGIN OF HTTP BODY ------------------------------------------------------
---------- END OF HTTP BODY ------------------------------------------------------
---------- END OF HTTP REQUEST -----------------------------------------------------
Es kommt also kein body.
Was Du also siehst, ist vermutlich vom Browser (IE?) generiert.
Mozilla zeigt beim view-source auf obiger Adresse
<html><body></body></html>
cu,
Andreas
Hallo Andreas,
Es kommt also kein body.
Was Du also siehst, ist vermutlich vom Browser (IE?) generiert.Mozilla zeigt beim view-source auf obiger Adresse
<html><body></body></html>
Danke für die Mühe. Ich wüßte leider nicht, wie ich das testen konnte. Das mit dem IE hatte ich auch schon vermutet. Jetzt weiß ich also, dass der Apache das nicht schickt und PHP auch nicht und ich das in das CMS mit reinbauen kann, ohne das Rad neu zu erfinden.
Genauso wie die mir vorgeschrieben haben, dass in Jeder Seite gleich nach dem Dokumenttyp das Impressum zu stehen hat. Wird einfach included. Find ich eine gute Idee. Wenn dann einer behauptet, da wäre keins, irrt er gewaltig. Rechte Maustaste, Quelltext anzeigen, und schon steht da das Impressum. Leicht zugänglich, wie es das Gesetzt vorschreibt.
Danke nochmal
cu
Chris