Convert htaccess to nginx rewrite rule

Posted August 14, 2015 32.6k views

I want to convert this to nginx rules

# BEGIN EAP Rewrite
<IfModule mod_rewrite.c>
RewriteEngine on
Options -Multiviews
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)?$ index.php?a=$1  [QSA,NC,L]
ErrorDocument 404 /new/404.php
# END EAP Rewrite

I have tried several, but no luck.

error_page 404 /new/404.php;
    location / {
        #try_files $uri $uri/ /index.php?$args;
        try_files $uri $uri/ /index.php?a=$args; 
        #rewrite  ^/(.*)?$  /index.php?a=$1 last;

Actually, this line below worked for the URL but real folder paths, like css and js, are not working.

#rewrite  ^/(.*)?$  /index.php?a=$1 last;

Anyone? thanks in advance.


These answers are provided by our Community. If you find them useful, show some love by clicking the heart. If you run into issues leave a comment, or add your own answer to help others.

Submit an Answer
1 answer

This question was answered by @XI:

Thanks for trying @julianlampert
None of that works.
I was able to fix it with

try_files $uri $uri/ /index.php?a=$uri;

after many tries.
Thanks anyways.

You can see the comment here.