Server Fault is a question and answer site for system and network administrators. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I'm trying to convert these rules from Apache rewrite to nginx:

RewriteRule ^([^/]+)/([^/]+)?$ api.php?version=$1&call=$2 [L]

I tried adding the following in the nginx config:

 rewrite ^([^/]+)/([^/]+)?$ api.php?version=$1&call=$2

but I only receive a 404 error when I visit my site.

I want my URL to look like:


How can I convert these rules to nginx?

share|improve this question
up vote 1 down vote accepted

Add a / to your rewrite-destination and set the last flag.

rewrite ^([^/]+)/([^/]+)?$ /api.php?version=$1&call=$2 last;
share|improve this answer

Here are two converters, but double check the conversion output as well

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.