10 Stimmen

PHP empfängt keine POST-Anfragen unter /directory/ nur unter /directory/index.php

Wenn eine POST-Anfrage an " http://domain.com/directory/ ", werden die POST-Daten nicht empfangen. Wenn sie aber an "" gesendet werden http://domain.com/directory/index.php "Es wird empfangen.

Wie kann ich erreichen, dass es funktioniert, wenn nur das Verzeichnis aufgerufen wird? Danke!

6voto

Elbert Alias Punkte 1730

Wenn Sie Apache verwenden, überprüfen Sie, ob das Modul mod_dir aktiviert und richtig konfiguriert ist. Dies ist der Inhalt meiner dir.conf:

<IfModule mod_dir.c>
    DirectoryIndex index.html index.cgi index.pl index.php index.xhtml index.htm
</IfModule>

4voto

Geoff Adams Punkte 1111

Haben Sie versucht, mit einem Tool wie HttpFox für Firefox, um zu sehen, wenn Sie eine Anforderung an das Verzeichnis auf seine eigene, Sie werden umgeleitet werden? Ich weiß, dass eine Umleitung eine POST-Anfrage zerstören kann, da sie in eine GET-Anfrage umgewandelt wird.

4voto

Propeng Punkte 508

Wie Lucanos sagte, leitet der Webserver auf index.php ? POST-Daten können zwischen den Seiten "verloren" gehen, wenn Sie umleiten. Versuchen Sie GET und prüfen Sie, ob die URL mit den richtigen Daten endet.

3voto

Mr Coder Punkte 8053

Erstellen Sie eine ".htaccess"-Datei im Verzeichnis /directory/ mit folgendem Inhalt

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ index.php [NC,L]

Es weist den Server an, alle Anfragen, die physisch nicht möglich sind (da keine Datei oder kein Ordner für diese Anfrage existiert), an index.php weiterzuleiten, was den Vorteil hat, dass Ihre .css-, .js und .jpg-Dateien nicht an index.php weitergeleitet werden.

0voto

kushalbhaktajoshi Punkte 4582

Wenn das Verzeichnis index.html zusammen mit index.php enthält, benennen Sie die Datei index.html einfach um, sonst löschen Sie die Datei, denn wenn Sie nur den Pfad zum Verzeichnis angeben, wird index.html immer aktiviert, unabhängig davon, ob index.php noch im selben Verzeichnis existiert.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X