2017-03-12 7 views
0

Ich muss einen Teil einer URL entfernen.URL neu schreiben Teil von URl entfernen

http://whatever.net/api/users/1 

Ich möchte ohne api in Pfad benannt, in demselben Verzeichnis in eine Datei Anfrage umleiten api.php

ich folgende Verzeichnisstruktur haben

root/api/{here we are}

Also muss ich, dass mein api.php Datei erhält nur user/1 in diesem Fall

Ich habe die folgende Konfiguration versucht, aber es funktioniert nicht - Nicht

gefunden
<IfModule mod_rewrite.c> 
RewriteEngine on 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^api/(.*)$ api.php/$1 [L] 
</IfModule> 

Bitte helfen Sie diese

+0

Also 'api.php' befindet sich im Ordner' api'? Oder sind sie auf der gleichen Ebene? Und wo befindet sich Ihr .htaccess? – CBroe

+0

_ "Ich brauche also, dass meine' api.php' Datei in diesem Fall nur 'user/1' empfängt" _ - define "receive". Sie haben die bereits gegebene Antwort kommentiert, dass Sie "dies mit htaccess tun müssen" _ - aber Ihr PHP-Skript muss darauf vorbereitet sein, die auf diese Weise übermittelten Daten zu lesen. (Das Schlüsselwort wäre _path info_.) – CBroe

Antwort

0

zum Laufen zu bringen Mit .htaccess

Führen Sie den modifizierten Pfad als get Variable

<IfModule mod_rewrite.c> 
    RewriteEngine on 
    RewriteCond %{REQUEST_FILENAME} !-f 
    RewriteCond %{REQUEST_FILENAME} !-d 
    RewriteRule ^api/(.*)$ api.php?path=$1 [L] 
</IfModule> 


PHP

In api.php, die ersten vier Zeichen Streifen (i, e/api) von der REQEST_URI vor dem Einsatz.

$required_value = substr(REQUEST_URI,5); 
+0

Ich muss dies mit htaccess tun – Ptzhub