2016-04-26 11 views
0

ich vonRedirect-URL (einschließlich Port) mit params mit .htaccess

http://www.example.com:81/my/api/search?query=test 

zu

http://www.example.com:81/my/php/api.php?query=test 

mit

RewriteCond %{QUERY_STRING} ^query=(.*)$ 
RewriteRule ^api/search(.*)$ /php/api.php?%1 [L] 

jedoch zu umleiten bin versucht, es funktioniert nicht für mich. Zusätzlich zum Testen von htaccess-Regeln verwende ich http://htaccess.madewithlove.be/.

Möglicherweise wäre noch besser zu überprüfen, ob Anfrage von^api beginnt und es ist Typ GET (I RewriteCond %{REQUEST_METHOD} guess verwenden) dann umleiten zu /my/php/api.php?[query hier params]

Jeder kann Richte mich in die richtige Richtung?

+0

Dies kann Ihnen helfen http://StackOverflow.com/a/16389034/4790490 – Hearty

+0

Wo befindet sich Ihre .htaccess? – anubhava

+0

Mein .htaccess befindet sich im Stammordner des Projekts. –

Antwort

1

Wenn Ihr .htaccess in /my/ Verzeichnis befindet, dann können Sie verwenden:

RewriteEngine On 
RewriteBase /my/ 

RewriteCond %{QUERY_STRING} ^query=. 
RewriteRule ^api/search/?$ php/api.php [L] 

QUERY_STRING werden automatisch übertragen URL Ziel.

+1

Danke. Das ist für mich in Ordnung. –

+0

Gut zu wissen, dass es funktioniert hat, [Sie können die Antwort als akzeptiert markieren, indem Sie auf ** Häkchen ** oben links in dieser Antwort klicken] (http://meta.stackexchange.com/a/5235/160242) – anubhava