tags:

views:

128

answers:

0

Hello,

I want to convert a few apache rules to nginx.

Here are the apache rules:

deny from 127.1.1.4

deny from 127.1.1.1

RewriteEngine on

RewriteRule ^$ /cgi-bin/index.cgi [L]

RewriteRule ([0-9A-Za-z]{12})-del-([0-9A-Za-z]+)/.+$ /cgi-bin/index.cgi?del=$1-$2 [L]

RewriteCond %{REQUEST_FILENAME} !-f

RewriteRule ^([0-9A-Za-z-_])/?([0-9A-Za-z]{12})(/[^\/]|)(.html?|$)$ /cgi-bin/index.cgi?op=download1&usr_login=$1&id=$2&fname=$3 [L]

RewriteCond %{REQUEST_FILENAME} !-f

RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule ^([0-9A-Za-z-]+)(/[0-9a-z-]*/?|$)$ /cgi-bin/index.cgi?op=user_public&usr_login=$1&fld=$2 [L,NC]

RewriteRule ^latest-files(\d*).html$ /cgi-bin/index.cgi?op=catalogue&page=$1 [L]

RewriteCond %{REQUEST_FILENAME} !-f

RewriteRule ^([a-z0-9-_]+).html(.*) /cgi-bin/index.cgi?op=page&tmpl=$1$2 [L]

ErrorDocument 404 /404.html

And nginx rules:

rewrite ^/free([0-9]+).html$ /cgi-bin/index.cgi?op=registration&aff_id=$1 last;

rewrite ^/(checkfiles|contact|login|links).html$ /cgi-bin/index.cgi?op=$1 last;

rewrite ^/premium.html$ /cgi-bin/index.cgi?op=payments last;

rewrite ^/catalogue(.*).html$ /cgi-bin/index.cgi?op=catalogue&date=$1 last;

rewrite ^/news([0-9]*).html$ /cgi-bin/index.cgi?op=news&page=$1 last;

rewrite ^/n([0-9]+)-.*.html$ /cgi-bin/index.cgi?op=news_details&news_id=$1 last;

rewrite ^/(faq|tos).html$ /cgi-bin/index.cgi?op=page&tmpl=$1 last;

rewrite "^/(?!tmp/)([0-9A-Za-z]{12})(\/.+|.html?|$)" /cgi-bin/index.cgi?op=download1&id=$1&fname=$2 last;

rewrite "^/users/([0-9A-Za-z-_]{4,64})/?([0-9]+|$)" /cgi-bin/index.cgi?op=user_public&usr_login=$1&fld_id=$2 last;

rewrite ^/pages/([a-z0-9-_]+).html /cgi-bin/index.cgi?op=page&tmpl=$1 last;

location / { root /etc/nginx/html; index index.html index.htm; rewrite ^ /cgi-bin/index.cgi last; }

There is something wrong with nginx rules (for example: images/* and css files 'link' to index.cgi)

Any idea about what might be wrong?

Thank you.