location, backend, rewrites

Sergej Kandyla sk.paix at gmail.com
Fri Aug 15 14:05:16 MSD 2008


Подскажите пожалуйста где я ошибаюсь.
Есть сайт с DLE, бекенд апач. Хочу реализовать правильную схему 
проксирования на бекенд исключительно php и динамики.

        location /index.php {
                rewrite / @backend ;
        }

        location ~ \.php$ {
                rewrite / @backend ;
        }

        location / {
                 root /home/vhosts/domain/public_html;
                error_page 404 = @backend;
                index index.php;
        }

        location @backend {
                    proxy_set_header Host $host;
                    proxy_set_header X-Real-IP $remote_addr;
                    proxy_set_header X-Forwarded-For 
$proxy_add_x_forwarded_for;
                    proxy_pass http://IP;
        }

Но на запрос к сайту, браузер предлагает мне сохранить php страницу. 
Тобиш запрос бекенду не передается.
Пробовал конструкцию
    if (!-e $request_filename) {proxy_pass http://IP;}

но результат такой же. Также пробовал менять порядок задания локейшенов.

PS. раньше была такая схема:

        location / {
                proxy_pass              http://IP;
                .....
        }

        location ~* 
^.+.(nrg|htm|htf|chm|sisx|sis|flv|thm|bin|...<skip>..)$ {
           root /home/_username_/domains/_default_/public_html/;
        }

Но она довольно ограниченная, хотелось бы узнать как следует делать 
правильно (в случае использования бекендов типа апаче)

-- 
Best Wishes,
PAIX-UANIC | SK3929-RIPE






More information about the nginx-ru mailing list