wordpress rewrite nginx
Igor Sysoev
is at rambler-co.ru
Wed Feb 14 16:21:49 MSK 2007
On Wed, Feb 14, 2007 at 12:09:05PM +0200, Anonymous Coward wrote:
Let's start from the scratch:
1) set the root at server level,
2) and move all if/rewrite rules to server level, then they will run
only once:
server {
...
root /var/www/localhost/htdocs/sub.domain.tld;
#uploaded files
rewrite ^(.*)?/?files/(.*) /wp-content/blogs.php?file=$2;
if (!-e $request_filename) {
rewrite ^.+?(/wp-.*) $2 last;
rewrite ^.+?(/.*\.php)$ $2 last;
rewrite ^ /index.php last;
}
...
}
The "^([_0-9a-zA-Z-]+)?(/wp-.*)" does not match "/test130/wp-content/...".
> I tried that too, same result...
> I also looked in access.log and i noticed that i was getting 404 on these
> files
>
> /test130/wp-content/themes/default/style.css
> /test130/wp-content/themes/default/images/kubrickbg.jpg
>
> On website i was trying to access sub.domain.tld/test130/ (which is a blog
> in Wordpress Mu) and on the server the files were in
>
> $documentroot/wp-content/themes/home/images/kubrickbg.jpg
> $documentroot/wp-content/themes/default/images/kubrickbg.jpg
>
> $documentroot/wp-content/themes/home/style.css
> $documentroot/wp-content/themes/default/style.css
> $documentroot/wp-content/themes/classic/style.css
>
> Maybe this will clear something...
>
> It's seems that "^([_0-9a-zA-Z-]+)?(/wp-.*)" are static files, so "break"
> >stops rewrite cycle. The "last" continues rewrite cycle and request will
> >go to "location ~ .php$".
--
Igor Sysoev
http://sysoev.ru/en/
More information about the nginx
mailing list