PHP über .html-Dateien laufen lassen

Alles, was PHP betrifft, kann hier besprochen werden.

PHP über .html-Dateien laufen lassen

Postby helios » 24. February 2004 18:43

Hallo,

ich weiss nicht, ob das eher ins PHP- oder Apache-Forum. Es gab auch schon einen Thread dazu, den ich aber heute nicht wieder gefunden habe, obwohl ich mich redlich bemühte.

Es geht darum, dass ich unter WAMPP (noch Version 1.2) gerne PHP über *.html-Dateien laufen lassen möchte. Es geht darum, eine bestehende Webseite aus *.html-Dateien mit PHP dynamisch zu erweitern, ohne die URLs zu verändern.

Mein Webhosting-Provider kam mir den Tipp, Folgendes in eine .htaccess-Datei zu schreiben:

Code: Select all
AddHandler x-httpd-php .html


Das klappt auf dem Webhosting-Account auch wunderbar. Nur mit WAMPP will das nicht funktionieren.

Ich hab es dann auch mit "AllowOverride All" in der "httpd.conf" versucht, sowohl global als auch in einem passenden <directory>-Abschnitt. Ich hab den obigen Befehl auch mal in die "httpd.conf" geschrieben. Ebenso global als auch in einem passenden <directory>-Abschnitt.

Dann habe ich es noch versucht, ".html" an den AddType-Befehl für PHP anzufügen:

Code: Select all
AddType application/x-httpd-php .php3 .php4 .php .phtml .html


Und einzeln als

Code: Select all
AddType application/x-httpd-php .html


habe ich es auch probiert, sowohl global als auch in einem passenden <directory>-Block.

Nichts davon hatte den gewünschten Effekt. Wo hängt es? Ist Apache 2.0.48 da irgendwie anders als Apache 1.3.x? Sonst hat Apache doch auch immer das gemacht, was ich will.

Grüße,
Martin Steigerwald
helios
 
Posts: 6
Joined: 13. February 2004 14:46

Postby helios » 24. February 2004 18:46

Hallo,

Vielleicht noch eine Ergänzung:

Die Änderung mit dem AddType-Befehl hatte einen Effekt. Und zwar denn, dass mir verschiedene Webbrowser (Mozilla, Internet Explorer) *.html-Dateien dann zum Download anboten, weil Sie mit deren MIME-Typ nichts anzufangen wussten.

Mit freundlichen Grüßen,
Martin Steigerwald
helios
 
Posts: 6
Joined: 13. February 2004 14:46

Postby Stefan » 25. February 2004 08:35

Morsche!


AddType application/x-httpd-php .php .php4 .php3 .phtml .helios

<Files ~ "\.(php|php3|php4|helios)$">
SetOutputFilter PHP
SetInputFilter PHP
</Files>


* http://httpd.apache.org/docs-2.0/mod/co ... tputfilter


Gruß
Stefan
User avatar
Stefan
 
Posts: 475
Joined: 26. December 2002 22:36
Location: Mitten in der sonnigen Südpfalz

Postby helios » 25. February 2004 16:57

Hallo Stefan,

das funktioniert hier nicht. Ich habe Deine Zeilen sowohl global als auch für das Verzeichnis "htdocs", wo die Dateien in einem Unterverzeichnis liegen, ausprobiert. Mein Hallo Welt!-PHP-Schnipsel gibt immer noch nichts aus.

Wie soll es überhaupt funktionieren? Die Dateien sollen ja ".html" heissen und nicht ".helios". Und genau über die "*.html"-Dateien soll er mit PHP drüber rennen.

Also irgendwie habe ich das Gefühl, dass das einfacher gehen muss.

Mal sehen, ob ich über Google doch noch was raus finde.

Grüße,
Martin Steigerwald
helios
 
Posts: 6
Joined: 13. February 2004 14:46

Postby helios » 25. February 2004 17:07

Hallo,

ich hab jetzt etwas zu dem Thema gefunden. Dort stehen jedoch auch nur die Möglichkeiten, die mit WAMPP 1.2 hier definitiv nicht funktionieren:

http://www.dclp-faq.de/q/q-apache-parsen.html

Auch mit

Code: Select all
AddType x-mapp-php4 .php .html


das für bestimmte Webhosting-Provider vorgeschlagen wird, geht es nicht. Da passiert gar nichts. Und mit

Code: Select all
AddType application/x-httpd-php .php .php4 .html


kann Mozilla mit den Dateien wieder nichts anfangen und möchte Sie downloaden.

Grüße,
Martin Steigerwald
helios
 
Posts: 6
Joined: 13. February 2004 14:46

Postby Destavator » 25. February 2004 17:16

Versuchs doch mal damit:

Code: Select all
ScriptAlias /php/ "{php Verzeichnis}"
AddType application/x-httpd-php .php .php4 .html
Action application/x-httpd-php "/php/php.exe"



Es hat nämlich keinen Sinn dem Apache einen Typen zuzuweisen ohne
ihm zu sagen was er damit zu tun hat.....


p.s.: Das ist das Beispiel für einen Apache unter Windows und verwendung von CGI. Wies unter Linux usw. aussieht kann ich leider nich sagen =(
Destavator
 
Posts: 13
Joined: 25. February 2004 11:09
Location: Wien

Postby helios » 25. February 2004 17:51

Hallo Devastator,

damit habe ich wieder den Effekt, dass Mozilla die Dateien nicht erkennt und downloaden möchte.

Ich glaube die Zeile mit dem "Action"-Befehl, die bei meiner "httpd.conf" ursprünglich auskommentiert war, ist nur nötig, wenn man PHP nicht als Apache-Modul lädt. Aber PHP wird offenbar standardmäßig als Modul geladen:

Code: Select all
LoadFile "C:/Programme/xampp/apache/bin/php4ts.dll"
LoadModule php4_module "C:/Programme/xampp/apache/bin/php4apache2.dll"


Grüße,
Martin Steigerwald
helios
 
Posts: 6
Joined: 13. February 2004 14:46

Postby Destavator » 25. February 2004 18:38

Ja das stimmt, nur ist mir aufgefallen das ich, wenn ich dieses Modul verwende einige probleme mit php bekomme die als CGI (also den Fall den ich aufgeführt habe) nicht entstehen. Und die Konfiguration wie oben funkt bei mir ohne Probleme. Kann sein das ich mit dem Modul nicht ganz zurechtkomme, aber die CGI Variante ist mir im Moment lieber da ich damit nie Probleme hatte
Destavator
 
Posts: 13
Joined: 25. February 2004 11:09
Location: Wien

Postby Stefan » 25. February 2004 18:42

Servus,

Natürlich war das helios nur als Platzhalter für eine beliebige Dateiendung gedacht. Bei mir funktionierte es auf Anhieb.
Da das hinzufügen von .html an die AddType Zeile nicht funktioniert, und auch das setzen des Outputfilter auf php für html Seiten keine Besserung bringt... kann ich jetzt auch keine Lösung anbieten. Sorry.

Frag doch mal in "de.comp.lang.php.installation" nach.

Viel Erfolg!

Gruß
Stefan
User avatar
Stefan
 
Posts: 475
Joined: 26. December 2002 22:36
Location: Mitten in der sonnigen Südpfalz

Postby helios » 27. February 2004 16:12

Hallo Stefan,

ich habe es schon auch mit ".html" als Dateiendung probiert. Zur Sicherheit gerade eben noch mal: Ich habe den original AddType-Befehl für PHP durch folgendes ersetzt:

Code: Select all
AddType application/x-httpd-php .php .php4 .php3 .phtml .html

<Files ~ "\.(php|php3|php4|phtml|html)$">
SetOutputFilter PHP
SetInputFilter PHP
</Files>


Dann bot mir Mozilla die Dateien wieder zum Download an. Ich habe auch versucht, die <Files>-Direktive direkt in den Directory-Block

Code: Select all
<Directory "C:/Programme/xampp/htdocs">


zu schreiben. Auch das hat nicht funktioniert. Wenn es bei Dir mit den genannten Befehlen funktioniert, kann es ja eigentlich nur noch daran liegen, dass ich die Befehle am falschen Ort in die httpd.conf geschrieben habe. Wo hast Du sie hingeschrieben?

Grüße,
Martin Steigerwald
helios
 
Posts: 6
Joined: 13. February 2004 14:46

Postby Shoukri » 27. February 2004 21:40

</shoukri>
User avatar
Shoukri
 
Posts: 76
Joined: 29. October 2003 00:25

Postby Stefan » 28. February 2004 09:05

Morsche,

Die Zeilen stehen in " Section 1: Global Environment "

Du schreibst das Mozilla die Datei downloaden will. Gut, er kennt den Typ nicht. Allerdings sollte bei unbekannten MimeType eigentlich doch der Inhalt dann im text/plain Format erscheinen.... "DefaultType text/plain".
Leider bin ich ganz und garkein Apacheprofi, weshalb all meine Vermutungen mehr oder minder Spekulation sind.
Hiernach ( http://httpd.apache.org/docs/mod/mod_mime.html#addtype )
würde es so wie Du es zuerst hattest stimmen.


Leider ohne nützlichen Hinweis
Gruß
Stefan
User avatar
Stefan
 
Posts: 475
Joined: 26. December 2002 22:36
Location: Mitten in der sonnigen Südpfalz


Return to PHP

Who is online

Users browsing this forum: No registered users and 9 guests