Einfach ist schwierig
Ich versuche grade, einfache php-Anweisungen in HTML-Seiten
einzubauen. Ist die Dateiendung .php, so passiert nix, ist sie php5,
so funktioniert der HTML-Teil der Seite, die php-Anweisung wird
übergangen.
Andererseits funktioniert die Weitergabe von Formulardaten per php,
die Anbindung an die Datenbank, kurz alles, was per <form> an php-
Scripts geleitet wird, gibt auch eine Antwort zurück. Nur ein simpler
echo-Befehl in einer html-Seite tut nix. Vielleicht seh ich ja den
Wald vor lauter Bäumen nicht.
System SuSE 10.3, Apache2, php 5.1.., die .conf-Dateien hab ich alle
abgeklopft, die Module sind geladen und die FAQ's bringen mich auch
nicht weiter.
Kann mir mal jemand sagen, wo der Haken ist?
Andreas
Re: Einfach ist schwierig
Andreas Böttner schrieb:
> Ich versuche grade, einfache php-Anweisungen in HTML-Seiten
> einzubauen. Ist die Dateiendung .php, so passiert nix,
Was heist es passiert nix? Wird PHP geparst oder als Klartext durchgereic=
ht?
> ist sie php5,
> so funktioniert der HTML-Teil der Seite, die php-Anweisung wird
> übergangen.
> Andererseits funktioniert die Weitergabe von Formulardaten per php,
> die Anbindung an die Datenbank, kurz alles, was per <form> an php-
> Scripts geleitet wird, gibt auch eine Antwort zurück. Nur ein simpler=
> echo-Befehl in einer html-Seite tut nix. Vielleicht seh ich ja den
> Wald vor lauter Bäumen nicht.
Per default wird auch kein *.html geparst.
> System SuSE 10.3, Apache2, php 5.1.., die .conf-Dateien hab ich alle
> abgeklopft, die Module sind geladen und die FAQ's bringen mich auch
> nicht weiter.
> Kann mir mal jemand sagen, wo der Haken ist?
Deinem Apachen musst du sagen welche Dateien, welche anhand ihrer Endung =
definiert werden, er an den PHP Parser weiterreichen soll.
Wenn du PHP als Modul benutzt dann sieht das so aus
AddType application/x-httpd-php .php .php3 .php4 .dasauchnoch
Nach einem Neustart wird dein Apache auch script.dasauchnoch als PHP
Script behandeln. Wenn du PHP uever CGI/FCGI benutzt dann muss der Name
des Handlers bekannt sein.
Gruss
Joerg
--
TakeNet GmbH, Geschaeftsfuehrer Wolfgang Meier
97080 Wuerzburg Tel: +49 931 903-2243
Alfred-Nobel-Straße 20 Fax: +49 931 903-3025
HRB Wuerzburg 6940 http://www.takenet.de
Re: Einfach ist schwierig
So sieht das aus, unter /etc/apache2/conf.d/php5.conf
AddType application/x-httpd-php .php4
AddType application/x-httpd-php .php5
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .php3s
AddType application/x-httpd-php-source .php4s
AddType application/x-httpd-php-source .php5s
AddType application/x-httpd-php-source .phps
DirectoryIndex index.php3
DirectoryIndex index.php4
DirectoryIndex index.php5
DirectoryIndex index.php
Und diese Datei ist auch als include definiert, die wird gelesen.
Re: Einfach ist schwierig
Andreas Böttner schrieb:
> So sieht das aus, unter /etc/apache2/conf.d/php5.conf
>
> AddType application/x-httpd-php .php4
> AddType application/x-httpd-php .php5
> AddType application/x-httpd-php .php
> AddType application/x-httpd-php-source .php3s
> AddType application/x-httpd-php-source .php4s
> AddType application/x-httpd-php-source .php5s
> AddType application/x-httpd-php-source .phps
> DirectoryIndex index.php3
> DirectoryIndex index.php4
> DirectoryIndex index.php5
> DirectoryIndex index.php
>
> Und diese Datei ist auch als include definiert, die wird gelesen.
Siehtst du da ein "AddType application/x-httpd-php .html"?
Gruss
Joerg
--
TakeNet GmbH, Geschaeftsfuehrer Wolfgang Meier
97080 Wuerzburg Tel: +49 931 903-2243
Alfred-Nobel-Straße 20 Fax: +49 931 903-3025
HRB Wuerzburg 6940 http://www.takenet.de
Re: Einfach ist schwierig
Habe ich geändert, nützt aber nix.
<HTML>
<HEAD>
<META HTTP-EQUIV=3D"CONTENT-TYPE" CONTENT=3D"text/html; charset=3Dutf-8">
<TITLE>Datenbank</TITLE>
</HEAD>
<BODY LANG=3D"de-DE" DIR=3D"LTR">
<h2> Bucheintrag Ergebnisse</h2>
<?php
phpinfo ();
?>
</BODY>
</HTML>
Heißt die Seite .php, bleibt der Bildschirm vom Firefox weiß, heißt
sie .php5 oder .html, bekomme ich die Ausgabe Bucheintrag Ergebnisse.
Die Seite liegt im Serverroot, verschiedene Benutzer habe ich auch
getestet.
Re: Einfach ist schwierig
Andreas Böttner schrieb:
> Habe ich geändert, nützt aber nix.
>
> <HTML>
> <HEAD>
> <META HTTP-EQUIV=3D"CONTENT-TYPE" CONTENT=3D"text/html; charset=3Dutf-=
8">
> <TITLE>Datenbank</TITLE>
> </HEAD>
> <BODY LANG=3D"de-DE" DIR=3D"LTR">
>
> <h2> Bucheintrag Ergebnisse</h2>
>
>
> <?php
> phpinfo ();
---------^
Mach mal das Leerzeichen weg.
> ?>
>
> </BODY>
> </HTML>
>
> Heißt die Seite .php, bleibt der Bildschirm vom Firefox weiß, heiß=
t
Weiße Seite bedeutet das display_error =3D OFF, error_reporting(0) ode=
r
aber PHP abgestuerzt ist.
> sie .php5 oder .html, bekomme ich die Ausgabe Bucheintrag Ergebnisse.
> Die Seite liegt im Serverroot, verschiedene Benutzer habe ich auch
> getestet.
Ich haette erwartet das fuer alle Endungen das Verhalten gleich ist.
Oder aber das in einzelnen Vhosts die Konfig abweichend ist.
Gruss
Joerg
--
TakeNet GmbH, Geschaeftsfuehrer Wolfgang Meier
97080 Wuerzburg Tel: +49 931 903-2243
Alfred-Nobel-Straße 20 Fax: +49 931 903-3025
HRB Wuerzburg 6940 http://www.takenet.de
Re: Einfach ist schwierig
Andreas Böttner schrieb:
> Habe ich geändert, nützt aber nix.
>
> <HTML>
> <HEAD>
> <META HTTP-EQUIV="CONTENT-TYPE" CONTENT="text/html; charset=utf-8">
> <TITLE>Datenbank</TITLE>
> </HEAD>
> <BODY LANG="de-DE" DIR="LTR">
>
> <h2> Bucheintrag Ergebnisse</h2>
>
>
> <?php
> phpinfo ();
> ?>
>
> </BODY>
> </HTML>
Na endlich mal ein Beispiel ;-)
> Heißt die Seite .php, bleibt der Bildschirm vom Firefox weiß, heißt
> sie .php5 oder .html, bekomme ich die Ausgabe Bucheintrag Ergebnisse.
Auch wenn phpinfo() ja eigentlich schon ein komplettes HTML-Dokument
erzeugt und somit bei dir ein invalides rauskäme, sollte es dennoch
"funktionieren".
Das ist sehr eigenartig, die weiße Seite riecht nach einem Serverproblem
und die Unterschiede kann ich mir jetzt gar nicht erklären.
Was sagt das Apache errorlog dazu?
Gruß
JPM
Re: Einfach ist schwierig
VHosts gibts nicht, das Leerzeichen konnte nix dafür und auch wenn
Display error auf ON steht, lädt der Firefox nix!
Die Datei kann root gehören oder dem Apache (wwwrun), hat Rechte für
alle....völlig wurscht, es erscheint kein phpinfo und eine Zeile wie
echo 'moin'; gibt auch nichts her.
Ich kapier das nicht.
Re: Einfach ist schwierig
[Wed Jan 16 15:34:14 2008] [error] [client 127.0.0.1] unable to
include potential exec "include/bottom.html" in parsed file /usr/share/
apache2/error/HTTP_NOT_FOUND.html.var
Letzter Serverstart
[Wed Jan 16 15:44:28 2008] [notice] caught SIGTERM, shutting down
[Wed Jan 16 15:44:29 2008] [notice] Apache/2.2.4 (Linux/SUSE) PHP/
5.1.2 configur ed --
resuming normal operations
Klingt sehr positiv, nützt aber nix
Re: Einfach ist schwierig
Hallo Andreas B=C3=B6ttner,
AB> Ich kapier das nicht.
schreib mal in die Seite "nur":
<?php
phpinfo();
?>
und ruf sie auf. Was passiert dann?
Bei mir gerade extra so getestet, sollte also gehen.
Gru=C3=9F
Arno Lutz
--
Linux, weil es doch ein Betriebssystem gibt, das gl=C3=BCcklich macht!
Re: Einfach ist schwierig
Arno Lutz schrieb:
> AB> Ich kapier das nicht.
Bitte gewöhne Deinem News-Client ein korrektes Quoting an. Den Mist den
das momentan fabriziert kann ja keiner richtig lesen...
MfG, Ulf
Re: Einfach ist schwierig
Ich kann es drehen und wenden, wie ich will, es gibt nix von sich.
Ich habe eine php-Datei, die als Datenbankschnittstelle arbeitet. Die
wird von einer html-Seite aufgerufen, mit Formulardaten gefüttert
(method=3Dpost) und gibt ein Ergebnis zurück. Wenn ich in diese Seite
nur phpinfo(); eintrage, dann kommt statt der Datenbank-Rückmeldung
erwartungsgemäß PHP-Info. Rufe ich die Seite direkt auf, dann passiert
nix. Auch nicht im Verzeichnis htdocs, auch nicht, wenn sie root
gehört, oder wwwrun oder George Bush.
Tief im Ineren vermute ich zwar ein Problem mit den Berechtigungen,
aber wenn alles andere funktioniert, dann weiß ich nicht, was da zu
ändern wäre. Die meisten Komponenten sind schon mit chmod 777 für
vogelfrei erklärt worden, die dürfen auch funktionieren.
Re: Einfach ist schwierig
Hallo
Andreas Böttner schrieb:
> Ich kann es drehen und wenden, wie ich will, es gibt nix von sich.
> Ich habe eine php-Datei, die als Datenbankschnittstelle arbeitet. Die
> wird von einer html-Seite aufgerufen, mit Formulardaten gefüttert
> (method=post) und gibt ein Ergebnis zurück. Wenn ich in diese Seite
> nur phpinfo(); eintrage, dann kommt statt der Datenbank-Rückmeldung
> erwartungsgemäß PHP-Info. Rufe ich die Seite direkt auf, dann passiert
> nix.
Na ja, wenn dieses PHP-script post-Daten auswerten soll und im direkten
Aufruf nichts übermittelt bekommt an Daten, was sollte dann zurückkommen?
Gruß
Irmgard
Re: Einfach ist schwierig
Andreas Böttner schrieb:
> Die meisten Komponenten sind schon mit chmod 777 für
> vogelfrei erklärt worden, die dürfen auch funktionieren.
Einige Hoster verlangen, dass die Rechte *maximal* 755 sind, wenn
safe_mode=3Doff ist und quittieren Zuwiderhandlungen mit einem Abbruch.
MfG
Niels
--
| http://www.kolleg.de =B7 Das Portal der Kollegs in Deutschland |
| http://www.bsds.de =B7 BSDS Braczek Software- und DatenSysteme |
| Webdesign =B7 Webhosting =B7 e-Commerce =B7 Joomla! Content Management =
|
------------------------------------------------------------ ------