wordpress rewrite nginx

Anonymous Coward magasesti at gmail.com
Tue Feb 13 16:47:09 MSK 2007


Thank you Igor,

I tried your suggestion too but i have the same behavoir with the exception
that now i see few more images but the design is still screwed.
I added just the rules from "#uploaded files" down because im testing the
blog in a subdomain now so the www thing is not needed and i would've used
the virtual hosts to handle it anyway.
I doubt that it's a problem with the files or anything because im using the
same directory for Apache and it works ok with the rules i mentioned... and
in nginx the first page looks ok, only posts and other blogs that should use
the rewrite are screwed.

Just to be sure im posting my nginx config (from server directive down):

        server {
                listen          my.ip.here;
                server_name     sub.domain.tld;

                access_log      /var/log/nginx/subdomain.access_log main;
                error_log       /var/log/nginx/subdomain.error_log;

               rewrite ^(.*)?/?files/(.*) /wp-content/blogs.php?file=$2;

               if (!-e $request_filename) {
                   rewrite ^([_0-9a-zA-Z-]+)?(/wp-.*) $2 last;
                   rewrite ^([_0-9a-zA-Z-]+)?(/.*\.php)$ $2 last;
                   rewrite ^ /index.php last;
               }
        location / {
                root    /var/www/localhost/htdocs/sub.domain.tld;
                allow 192.168.2.0/24;
                deny all;
                }
        location ~ .php$ {
                include /etc/nginx/fastcgi_params;
                fastcgi_pass   127.0.0.1:1105;
                fastcgi_index  index.php;

            # where the php files to pass to the listener.
                fastcgi_param  SCRIPT_FILENAME
/var/www/localhost/htdocs/subdomain.tld$fastcgi_script_name;
                }
        }
}


On 2/13/07, Igor Sysoev <is at rambler-co.ru> wrote:
>
> On Tue, Feb 13, 2007 at 01:48:57AM +0200, Anonymous Coward wrote:
>
> > i installed Wordpress today on nginx  and everything seems ok except one
> > "small" issue, i don't know how to convert the rewrite rules.
> > So if anybody has any experience or knows how to do it i'd be gratefull
> > cause they have only Apache examples :(
> >
> > RewriteEngine On
> > RewriteBase /
> >
> > # Rewrite www.domain.com to domain.com
> > RewriteCond %{HTTP_HOST} ^www\.(.*)
> > RewriteRule ^(.*)       http://%1/$1 [R,L]
> >
> > #uploaded files
> > RewriteRule ^(.*)?/?files/(.*) wp-content/blogs.php?file=$2 [L]
> >
> > RewriteCond %{REQUEST_FILENAME} -f [OR]
> > RewriteCond %{REQUEST_FILENAME} -d
> > RewriteRule . - [L]
> > RewriteRule  ^([_0-9a-zA-Z-]+/)?(wp-.*) $2 [L]
> > RewriteRule  ^([_0-9a-zA-Z-]+/)?(.*\.php)$ $2 [L]
> > RewriteRule . index.php [L]
>
>
>     server {
>         ...
>
>         # Rewrite www.domain.com to domain.com
>         if ($http_host ~ "^www\.(.*)") {
>             set      $name    $1;
>             rewrite  ^(.*)    http://$name/$1;
>         }
>
>         #uploaded files
>         rewrite  ^(.*)?/?files/(.*) /wp-content/blogs.php?file=$2;
>
>         if (!-e $request_filename) {
>             rewrite  ^([_0-9a-zA-Z-]+)?(/wp-.*)     $2          last;
>             rewrite  ^([_0-9a-zA-Z-]+)?(/.*\.php)$  $2          last;
>             rewrite  ^                              /index.php  last;
>         }
>
>         ...
>     }
>
> However, it's better to replace the first rule with separate virtual
> hosts.
>
>
> --
> Igor Sysoev
> http://sysoev.ru/en/
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://nginx.org/pipermail/nginx/attachments/20070213/afd311f6/attachment.html>


More information about the nginx mailing list