# Problem with .htaccess

**URL:** <https://www.ruby-forum.com/t/problem-with-htaccess/187425>\
**Category:** NGINX\
**Created:** [April 22, 2010, 11:58pm UTC](https://www.ruby-forum.com/t/problem-with-htaccess/187425 "2010-04-22T23:58:46Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![assassin85](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/a/f475e1/32.png) [@assassin85](https://www.ruby-forum.com/u/assassin85)\
**Post date:** [April 22, 2010, 11:58pm UTC](https://www.ruby-forum.com/t/problem-with-htaccess/187425/1 "2010-04-22T23:58:46Z")

</div>

hello

i have a problem with .htaccess file not workin with nGinx

here is is code

RewriteEngine On  
RewriteCond %{HTTP\_HOST} !^[vb.sitename.com](http://vb.sitename.com)  
RewriteCond %{REQUEST\_FILENAME} vb/  
RewriteRule (.\*) [http://vb.dardarkom.com/$1](http://vb.dardarkom.com/$1)

RewriteRule ^page/(.\*)$ index.php?cstart=$1

RewriteRule  
^([0-9]{4})/([0-9]{2})/([0-9]{2})/page,([0-9]+),([0-9]+),(._).html(/?)+$  
index.php?subaction=showfull&year=$1&month=$2&day=$3&news\_page=$4&cstart=$5&news\_name=$6  
RewriteRule  
^([0-9]{4})/([0-9]{2})/([0-9]{2})/page,([0-9]+),(._).html(/?)+$  
index.php?subaction=showfull&year=$1&month=$2&day=$3&news\_page=$4&news\_name=$5  
RewriteRule  
^([0-9]{4})/([0-9]{2})/([0-9]{2})/print:page,([0-9]+),(._).html(/?)+$  
engine/print.php?subaction=showfull&year=$1&month=$2&day=$3&news\_page=$4&news\_name=$5  
RewriteRule ^([0-9]{4})/([0-9]{2})/([0-9]{2})/(._).html(/?)+$  
index.php?subaction=showfull&year=$1&month=$2&day=$3&news\_name=$4

RewriteRule ^([^.]+)/page,([0-9]+),([0-9]+),([0-9]+)-(._).html(/?)+$  
index.php?newsid=$4&news\_page=$2&cstart=$3  
RewriteRule ^([^.]+)/page,([0-9]+),([0-9]+)-(._).html(/?)+$  
index.php?newsid=$3&news\_page=$2  
RewriteRule ^([^.]+)/print:page,([0-9]+),([0-9]+)-(._).html(/?)+$  
engine/print.php?news\_page=$2&newsid=$3  
RewriteRule ^([^.]+)/([0-9]+)-(._).html(/?)+$ index.php?newsid=$2

RewriteRule ^page,([0-9]+),([0-9]+),([0-9]+)-(._).html(/?)+$  
index.php?newsid=$3&news\_page=$1&cstart=$2  
RewriteRule ^page,([0-9]+),([0-9]+)-(._).html(/?)+$  
index.php?newsid=$2&news\_page=$1  
RewriteRule ^print:page,([0-9]+),([0-9]+)-(._).html(/?)+$  
engine/print.php?news\_page=$1&newsid=$2  
RewriteRule ^([0-9]+)-(._).html(/?)+$ index.php?newsid=$1

RewriteRule ^([0-9]{4})/([0-9]{2})/([0-9]{2})(/?)+$  
index.php?year=$1&month=$2&day=$3  
RewriteRule ^([0-9]{4})/([0-9]{2})/([0-9]{2})/page/([0-9]+)(/?)+$  
index.php?year=$1&month=$2&day=$3&cstart=$4

RewriteRule ^([0-9]{4})/([0-9]{2})(/?)+$ index.php?year=$1&month=$2  
RewriteRule ^([0-9]{4})/([0-9]{2})/page/([0-9]+)(/?)+$  
index.php?year=$1&month=$2&cstart=$3

RewriteRule ^([0-9]{4})(/?)+$ index.php?year=$1  
RewriteRule ^([0-9]{4})/page/([0-9]+)(/?)+$ index.php?year=$1&cstart=$2

RewriteRule ^tags/([^/]_)(/?)+$ index.php?do=tags&tag=$1  
RewriteRule ^tags/([^/]_)/page/([0-9]+)(/?)+$  
index.php?do=tags&tag=$1&cstart=$2

RewriteRule ^user/([^/]_)/rss.xml$  
engine/rss.php?subaction=allnews&user=$1  
RewriteRule ^user/([^/]_)(/?)+$ index.php?subaction=userinfo&user=$1  
RewriteRule ^user/([^/]_)/page/([0-9]+)(/?)+$  
index.php?subaction=userinfo&user=$1&cstart=$2  
RewriteRule ^user/([^/]_)/news(/?)+$ index.php?subaction=allnews&user=$1  
RewriteRule ^user/([^/]_)/news/page/([0-9]+)(/?)+$  
index.php?subaction=allnews&user=$1&cstart=$2  
RewriteRule ^user/([^/]_)/news/rss.xml(/?)+$  
engine/rss.php?subaction=allnews&user=$1

RewriteRule ^lastnews/(/?)+$ index.php?do=lastnews  
RewriteRule ^lastnews/page/([0-9]+)(/?)+$  
index.php?do=lastnews&cstart=$1

RewriteRule ^catalog/([^/]_)(/?)+$ index.php?catalog=$1  
RewriteRule ^catalog/([^/]_)/page/([0-9]+)(/?)+$  
index.php?catalog=$1&cstart=$2

RewriteRule ^newposts(/?)+$ index.php?subaction=newposts  
RewriteRule ^newposts/page/([0-9]+)(/?)+$  
index.php?subaction=newposts&cstart=$1

RewriteRule ^static/(.\*).html(/?)+$ index.php?do=static&page=$1

RewriteRule ^favorites(/?)+$ index.php?do=favorites  
RewriteRule ^favorites/page/([0-9]+)(/?)+$  
index.php?do=favorites&cstart=$1

RewriteRule ^rules.html$ index.php?do=rules  
RewriteRule ^statistics.html$ index.php?do=stats  
RewriteRule ^addnews.html$ index.php?do=addnews  
RewriteRule ^rss.xml$ engine/rss.php  
RewriteRule ^sitemap.xml$ uploads/sitemap.xml

RewriteCond %{REQUEST\_FILENAME} !-d  
RewriteRule ^([^.]+)/page/([0-9]+)(/?)+$  
index.php?do=cat&category=$1&cstart=$2  
RewriteRule ^([^.]+)/?$ index.php?do=cat&category=$1

RewriteCond %{REQUEST\_FILENAME} !-f  
RewriteRule ^([^\<]+)/rss.xml$ engine/rss.php?do=cat&category=$1  
RewriteRule ^page,([0-9]+),([^/]+).html$  
index.php?do=static&page=$2&news\_page=$1  
RewriteRule ^print:([^/]+).html$ engine/print.php?do=static&page=$1

RewriteCond %{REQUEST\_FILENAME} !-f  
RewriteRule ^([^/]+).html$ index.php?do=static&page=$1

i would be apprecaited if someone recode this .htaccess with nGinx Rules

thanks

Posted at Nginx Forum:

> **[problem with .htaccess](https://forum.nginx.org/read.php?2,78233,78233#msg-78233)**
>
> hello i have a problem with .htaccess file not workin with nGinx here is is code \[code\] RewriteEngine On RewriteCond %{HTTP\_HOST} !^vb.sitename.com RewriteCond %{REQUEST\_FILENAME} vb/ RewriteRule (.\*) http://vb.dardarkom.com/$1

---

<div class="post-metadata">

**Author:** ![assassin85](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/a/f475e1/32.png) [@assassin85](https://www.ruby-forum.com/u/assassin85)\
**Post date:** [April 24, 2010, 2:36pm UTC](https://www.ruby-forum.com/t/problem-with-htaccess/187425/2 "2010-04-24T14:36:39Z")

</div>

if ($http\_host !~ “^[vb.sitename.com](http://vb.sitename.com)”){  
set $rule\_0 1$rule\_0;  
}  
if ($request\_filename ~ “vb/”){  
set $rule\_0 2$rule\_0;  
}  
if ($rule\_0 = “21”){  
rewrite /(._) [Dardarkom](http://vb.dardarkom.com/$1) permanent;  
break;  
}  
rewrite ^/page/(._)$ /index.php?cstart=$1 last;  
rewrite  
^/([0-9]{4})/([0-9]{2})/([0-9]{2})/page,([0-9]+),([0-9]+),(._).html(/?)+$  
/index.php?subaction=showfull&year=$1&month=$2&day=$3&news\_page=$4&cstart=$5&news\_name=$6  
last;  
rewrite  
^/([0-9]{4})/([0-9]{2})/([0-9]{2})/page,([0-9]+),(._).html(/?)+$  
/index.php?subaction=showfull&year=$1&month=$2&day=$3&news\_page=$4&news\_name=$5  
last;  
rewrite  
^/([0-9]{4})/([0-9]{2})/([0-9]{2})/print:page,([0-9]+),(._).html(/?)+$  
/engine/print.php?subaction=showfull&year=$1&month=$2&day=$3&news\_page=$4&news\_name=$5  
last;  
rewrite ^/([0-9]{4})/([0-9]{2})/([0-9]{2})/(._).html(/?)+$  
/index.php?subaction=showfull&year=$1&month=$2&day=$3&news\_name=$4 last;  
rewrite ^/([^.]+)/page,([0-9]+),([0-9]+),([0-9]+)-(._).html(/?)+$  
/index.php?newsid=$4&news\_page=$2&cstart=$3 last;  
rewrite ^/([^.]+)/page,([0-9]+),([0-9]+)-(._).html(/?)+$  
/index.php?newsid=$3&news\_page=$2 last;  
rewrite ^/([^.]+)/print:page,([0-9]+),([0-9]+)-(._).html(/?)+$  
/engine/print.php?news\_page=$2&newsid=$3 last;  
rewrite ^/([^.]+)/([0-9]+)-(._).html(/?)+$ /index.php?newsid=$2 last;  
rewrite ^/page,([0-9]+),([0-9]+),([0-9]+)-(._).html(/?)+$  
/index.php?newsid=$3&news\_page=$1&cstart=$2 last;  
rewrite ^/page,([0-9]+),([0-9]+)-(._).html(/?)+$  
/index.php?newsid=$2&news\_page=$1 last;  
rewrite ^/print:page,([0-9]+),([0-9]+)-(._).html(/?)+$  
/engine/print.php?news\_page=$1&newsid=$2 last;  
rewrite ^/([0-9]+)-(._).html(/?)+$ /index.php?newsid=$1 last;  
rewrite ^/([0-9]{4})/([0-9]{2})/([0-9]{2})(/?)+$  
/index.php?year=$1&month=$2&day=$3 last;  
rewrite ^/([0-9]{4})/([0-9]{2})/([0-9]{2})/page/([0-9]+)(/?)+$  
/index.php?year=$1&month=$2&day=$3&cstart=$4 last;  
rewrite ^/([0-9]{4})/([0-9]{2})(/?)+$ /index.php?year=$1&month=$2  
last;  
rewrite ^/([0-9]{4})/([0-9]{2})/page/([0-9]+)(/?)+$  
/index.php?year=$1&month=$2&cstart=$3 last;  
rewrite ^/([0-9]{4})(/?)+$ /index.php?year=$1 last;  
rewrite ^/([0-9]{4})/page/([0-9]+)(/?)+$ /index.php?year=$1&cstart=$2  
last;  
rewrite ^/tags/([^/]_)(/?)+$ /index.php?do=tags&tag=$1 last;  
rewrite ^/tags/([^/]_)/page/([0-9]+)(/?)+$  
/index.php?do=tags&tag=$1&cstart=$2 last;  
rewrite ^/user/([^/]_)/rss.xml$  
/engine/rss.php?subaction=allnews&user=$1 last;  
rewrite ^/user/([^/]_)(/?)+$ /index.php?subaction=userinfo&user=$1  
last;  
rewrite ^/user/([^/]_)/page/([0-9]+)(/?)+$  
/index.php?subaction=userinfo&user=$1&cstart=$2 last;  
rewrite ^/user/([^/]_)/news(/?)+$ /index.php?subaction=allnews&user=$1  
last;  
rewrite ^/user/([^/]_)/news/page/([0-9]+)(/?)+$  
/index.php?subaction=allnews&user=$1&cstart=$2 last;  
rewrite ^/user/([^/]_)/news/rss.xml(/?)+$  
/engine/rss.php?subaction=allnews&user=$1 last;  
rewrite ^/lastnews/(/?)+$ /index.php?do=lastnews last;  
rewrite ^/lastnews/page/([0-9]+)(/?)+$  
/index.php?do=lastnews&cstart=$1 last;  
rewrite ^/catalog/([^/]_)(/?)+$ /index.php?catalog=$1 last;  
rewrite ^/catalog/([^/]_)/page/([0-9]+)(/?)+$  
/index.php?catalog=$1&cstart=$2 last;  
rewrite ^/newposts(/?)+$ /index.php?subaction=newposts last;  
rewrite ^/newposts/page/([0-9]+)(/?)+$  
/index.php?subaction=newposts&cstart=$1 last;  
rewrite ^/static/(.\*).html(/?)+$ /index.php?do=static&page=$1 last;  
rewrite ^/favorites(/?)+$ /index.php?do=favorites last;  
rewrite ^/favorites/page/([0-9]+)(/?)+$  
/index.php?do=favorites&cstart=$1 last;  
rewrite ^/rules.html$ /index.php?do=rules last;  
rewrite ^/statistics.html$ /index.php?do=stats last;  
rewrite ^/addnews.html$ /index.php?do=addnews last;  
rewrite ^/rss.xml$ /engine/rss.php last;  
rewrite ^/sitemap.xml$ /uploads/sitemap.xml last;  
if (!-d $request\_filename){  
set $rule\_42 1$rule\_42;  
}  
if ($rule\_42 = “1”){  
rewrite ^/([^.]+)/page/([0-9]+)(/?)+$  
/index.php?do=cat&category=$1&cstart=$2 last;  
}  
rewrite ^/([^.]+)/?$ /index.php?do=cat&category=$1 last;  
if (!-f $request\_filename){  
set $rule\_44 1$rule\_44;  
}  
if ($rule\_44 = “1”){  
rewrite ^/([^\<]+)/rss.xml$ /engine/rss.php?do=cat&category=$1 last;  
}  
rewrite ^/page,([0-9]+),([^/]+).html$  
/index.php?do=static&page=$2&news\_page=$1 last;  
rewrite ^/print:([^/]+).html$ /engine/print.php?do=static&page=$1  
last;  
if (!-f $request\_filename){  
set $rule\_47 1$rule\_47;  
}  
if ($rule\_47 = “1”){  
rewrite ^/([^/]+).html$ /index.php?do=static&page=$1 last;  
}

Posted at Nginx Forum:

> **[Re: problem with .htaccess](https://forum.nginx.org/read.php?2,78233,78768#msg-78768)**
>
> hello i have a problem with .htaccess file not workin with nGinx here is is code \[code\] RewriteEngine On RewriteCond %{HTTP\_HOST} !^vb.sitename.com RewriteCond %{REQUEST\_FILENAME} vb/ RewriteRule (.\*) http://vb.dardarkom.com/$1

---

<div class="post-metadata">

**Author:** ![assassin85](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/a/f475e1/32.png) [@assassin85](https://www.ruby-forum.com/u/assassin85)\
**Post date:** [April 24, 2010, 3:59pm UTC](https://www.ruby-forum.com/t/problem-with-htaccess/187425/3 "2010-04-24T15:59:45Z")

</div>

-------- Original-Nachricht --------

> Datum: Sat, 24 Apr 2010 08:35:32 -0400  
> Von: “st1905” [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)  
> An: [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)  
> Betreff: Re: problem with .htaccess

> }  
> rewrite ^/([0-9]{4})/([0-9]{2})/([0-9]{2})/(._).html(/?)+$  
> rewrite ^/page,([0-9]+),([0-9]+)-(._).html(/?)+$  
> /index.php?year=$1&month=$2&cstart=$3 last;  
> /index.php?subaction=userinfo&user=$1&cstart=$2 last;  
> rewrite ^/catalog/([^/]\*)/page/([0-9]+)(/?)+$  
> rewrite ^/addnews.html$ /index.php?do=addnews last;  
> if (!-f $request\_filename){  
> }  
> if ($rule\_47 = “1”){  
> rewrite ^/([^/]+).html$ /index.php?do=static&page=$1 last;  
> }

You forgot to mention the problem.

> Posted at Nginx Forum:  
> [http://forum.nginx.org/read.php?2,78233,78768#msg-78768](http://forum.nginx.org/read.php?2,78233,78768#msg-78768)
> 
> * * *
> 
> nginx mailing list  
> [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)  
> [mailman.nginx.org archive](http://nginx.org/mailman/listinfo/nginx)

–  
GRATIS für alle GMX-Mitglieder: Die maxdome Movie-FLAT!  
Jetzt freischalten unter [http://portal.gmx.net/de/go/maxdome01](http://portal.gmx.net/de/go/maxdome01)

---

<div class="post-metadata">

**Author:** ![assassin85](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/a/f475e1/32.png) [@assassin85](https://www.ruby-forum.com/u/assassin85)\
**Post date:** [April 24, 2010, 7:53pm UTC](https://www.ruby-forum.com/t/problem-with-htaccess/187425/4 "2010-04-24T19:53:56Z")

</div>

I would convert this to a single controller file and handle it in app  
logic. Talk about an ugly mess 🙂 I try to reduce the configuration  
of the server as much as possible.

I’d make a single front controller and then use nginx’s try\_files.  
Clean and simple 🙂
