Seite 1 von 1

.htaccess, hosting und php

Verfasst: 14.09.2006, 16:27
von mcchaos
Hallo!

Bin gerade auf einen neuen Hosting-Server umgezogen. Meine Dateien haben alle die Endung .php4. Der neue Server (Apache) hat aber nur .php registriert, des weiteren sucht er nach index.htm und nicht nach index.php4. Ich habe keinen Zugriff auf die .httpd.conf, also habe ich eine .htaccess verfasst, die das beheben soll:

AddType application/x-httpd-php .php .php4

<IfModule mod_dir.c>
DirectoryIndex index.php4
</IfModule>

Auf einem lokal installierten Apache geht es. Auf dem Server-Apache wird die index.php4 (ein Frameset) ausgeführt, aber alle Frames werden im Quelltext runtergeladen. Irgendeine Idee? Server ist Apache 1.3.33.

P.S.: Ja, ich könnte alle Dateien umbennenen, will ich aber nicht :wink:

Verfasst:
von
SEO Consulting bei ABAKUS Internet Marketing
Erfahrung seit 2002
  • persönliche Betreuung
  • individuelle Beratung
  • kompetente Umsetzung

Jetzt anfragen: 0511 / 300325-0.


Re: .htaccess, hosting und php

Verfasst: 16.09.2006, 19:00
von haha
mcchaos hat geschrieben:AddType application/x-httpd-php .php .php4

<IfModule mod_dir.c>
DirectoryIndex index.php4
</IfModule>
Den ifmodule-Teil kannst Du weglassen (nicht seinen Inhalt), aber ansonsten ist das soweit richtig. Beachte, dass DirectoryIndex damit nur noch nach index.php4 sucht, nicht mehr nach anderen Varianten (index.html, etc).
Auf einem lokal installierten Apache geht es. Auf dem Server-Apache wird die index.php4 (ein Frameset) ausgeführt,
Dann scheinen Deine Einstellungen zu funktionieren.
aber alle Frames werden im Quelltext runtergeladen.
Und was ist in den Frames enthalten? Auch .php4-Dateien? Falls ja, kannst Du sie denn wenigstens direkt aufrufen? Falls nein, musst Du prüfen, was der Server bei deren Endung veranstalten soll.

Davon mal abgesehen: Ich vermute mal, Du bezahlst für den Hosting-Dienst, somit kannst Du den Hoster auch gerne selbst fragen, warum das bei ihm nicht funktioniert. Du bist zahlender Kunde, kein lästiges Übel. Außerdem sollte er am besten wissen, was auf seinen Kisten wie läuft. Weiß er das nicht, oder meint er, Hilfestellung für seine Kunden gehöre nicht zum Geschäft, solltest Du Dir besser einen anderen suchen.

Verfasst: 18.09.2006, 06:22
von mcchaos
Danke für Deine Antwort!
Und was ist in den Frames enthalten? Auch .php4-Dateien? Falls ja, kannst Du sie denn wenigstens direkt aufrufen? Falls nein, musst Du prüfen, was der Server bei deren Endung veranstalten soll.
Ja, das Frameset ruft wieder php4-Dateien auf. Gebe ich diese direkt in den Browser ein, werden sie auch nicht ausgeführt. Es wird also eigentlich NUR die index.php4 ausgeführt.
Davon mal abgesehen: Ich vermute mal, Du bezahlst für den Hosting-Dienst, somit kannst Du den Hoster auch gerne selbst fragen, warum das bei ihm nicht funktioniert.
Habe ich ja, er hat es auch behoben, aber nicht mehr dazu gesagt. Und ich würde halt gerne verstehen, wieso nur die index.php4 interpretiert wird, weil (nach meiner Meinung) entweder alle .php4-Dateien oder eben keine ausgeführt werden sollten.

Verfasst: 18.09.2006, 13:01
von haha
mcchaos hat geschrieben:Ja, das Frameset ruft wieder php4-Dateien auf. Gebe ich diese direkt in den Browser ein, werden sie auch nicht ausgeführt. Es wird also eigentlich NUR die index.php4 ausgeführt.

weil (nach meiner Meinung) entweder alle .php4-Dateien oder eben keine ausgeführt werden sollten.
Das ist in der Tat äußerst merkwürdig und Du hast grundsätzlich vollkommen recht, wenn eine .php4 ausgeführt wird, müssten alle ausgeführt werden.

Mir ist noch nicht klar, ob die index.php4 von PHP ausgeführt oder einfach als HTML-Seite ausgegeben wird; das kann im Browser beides gleich aussehen, würde aber einigen Unterschied ausmachen und in letzterem Fall erklären, warum scheinbar nur die index.php4 funktioniert, aber die anderen nicht.
Weiterhin ob die anderen .php4-Dateien als PHP- oder als HTML-Quelltext (ohne PHP-Code) angezeigt werden; in ersterem Fall würde PHP gar nicht seine Finger dran kriegen (oder abgeschaltet sein), im zweiten würde PHP den falschen Datentyp an den Browser senden (eher unwahrscheinlich).

Du könntest auch nochmal in das Fehlerprotokoll des Webservers schauen, ob sich dort irgendeine Andeutung niederschlägt. Du könntest auch spaßeshalber "AddType text/html .php4" und "AddType text/plain .php4" ausprobieren, um zu sehen, ob Deine AddType-Anweisung überhaupt funktioniert - zugegebenermaßen eine reine Verzweiflungstat, aber es geschehen bisweilen merkwürdige Dinge und der größte Ärger hat seine Ursache in den kleinsten Fehlern…

Im Großen und Ganzen scheint das aber IMHO nichts zu sein, was Du selbst beheben kannst. Du wirst also wohl oder übel entweder Deinem Hoster nochmal aufs Dach steigen oder selbst alle Dateien umbenennen müssen.

Verfasst: 18.09.2006, 13:50
von net(t)worker
wie sieht denn die index.php4 aus? ist dort nur HTML, also das Frameset enthalten, oder ist dort auch php code drin, der dann auch korrekt ausgeführt wird?

welche php version ist installiert?

wird die nicht auch teilweise so angegeben:
x-httpd-php5 für php5
x-httpd-php4 für php4
x-httpd-php3 für php3

wenn du also php 5 bei dir laufen hast ggf. einfach mal

AddType application/x-httpd-php5 .php .php4

antesten....