Ich habe diese Struktur: site.com/api/index.php
. Wenn ich Daten an site.com/api/
senden, gibt es kein Problem, aber ich stelle mir vor, es wäre besser, wenn die API auch ohne den Schrägstrich funktionieren würde, so: site.com/api
. Dies führt zu einer 301-Umleitung und damit zu einem Verlust der Daten (da Daten nicht weitergeleitet werden). Ich probierte jedes Umschreiben aus, das mir einfiel, und konnte die Umleitung nicht vermeiden. Dies ist meine aktuelle Regel zum erneuten Schreiben (obwohl sie irrelevant sein kann).Wie Zugriff auf Verzeichnis index.php ohne einen Schrägstrich und nicht erhalten 301 Umleitung
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^api/(.*)$ api/index.php [L]
Kann ich diese URL arbeiten und die Post-Daten beibehalten, ohne den Schrägstrich zu verwenden?
Einige umschreibt, die nicht funktioniert haben: (alle noch umleiten)
RewriteRule ^api$ api/index.php [L]
RewriteRule ^api/*$ api/index.php [L]
Der Schrägstrich durch die Apache-Modul mod_dir hinzugefügt: http://httpd.apache.org/docs/2.2/mod/mod_dir.html –
Auch Ihre Rewrite-Regel, so wie sie geschrieben ist, hat den abschließenden Schrägstrich als Teil der Regel. Sie könnten wahrscheinlich einfach das '/' aus der Regel entfernen und es würde funktionieren. –
Rechts. Ich dachte, dass ich eine Anfrage in dieses Verzeichnis direkt in index.php schreiben könnte, so dass das Modul niemals startet, aber es hat nicht funktioniert. Ich werde aktualisieren, um zu zeigen, was ich dort versucht habe. – m59