Welcome! Log In Create A New Profile

Advanced

Rewrite+resolver

December 28, 2013 05:57AM
привет всем.

есть 2 вопроса:

1. Понадобилось сделать чпу. Были ссылки вида http://www.host.ru/news/view?id=12 надо было переделать в виде http://www.host.ru/category/name_12

Сделал это с помощью proxy_pass вот так:

location ~ .+/.+_(\d+)$ {
proxy_pass http://$server_name/news/view?id=$1
}

но возникла проблема. для хоста www.host.ru это работает нормально, а для хоста help.host.ru пишет no resolver defined

поправил это вот таким способом

location ~ .+/.+_(\d+)$ {
resolver 8.8.8.8;
proxy_pass proxy_pass http://$server_name/news/view?id=$1
}

конфиги для www.host.ru и help.host.ru - идентичные, отличаются только server_name и root_dir

Вопрос: почему для первого хоста все работает и без resolver, а для второго прописывать обязательно?

2. Правильно ли таким образом делать чпу? с помощью rewrite не получилось.

вот конфиг для www.host.ru. Хотелось бы услышать как улучшить этот конфиг, в чем ошибка, и как сделать чпу с помощью rewrite(возможно ли)

################################

server {
listen 81;
server_name www.host.ru;

root /var/www/host.ru/www/;

access_log /var/log/nginx/www.host.access.log;
error_log /var/log/nginx/www.host.error.log;

location ~ .+/.+_(\d+)$ {
proxy_pass http://$server_name/news/view?id=$1&internal=1;
}

location / {
try_files $uri /index.php$uri?$query_string;
}

location /index.php {
internal;
root /var/www/host.ru/www;
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
fastcgi_ignore_client_abort off;
fastcgi_buffers 256 16K;
fastcgi_buffer_size 32k;
fastcgi_split_path_info ^(.+\.php)(.*)$;

fastcgi_param CITY $city;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_path_info;
include fastcgi_params;
}

location ~* \.php$ {

root /var/www/host.ru/www/;
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
fastcgi_ignore_client_abort off;
fastcgi_split_path_info ^(.+\.php)(.*)$;

fastcgi_param CITY $city;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_buffers 256 16K;
fastcgi_buffer_size 32k;
include fastcgi_params;
}

}
################################
Subject Author Posted

Rewrite+resolver

buddha December 28, 2013 05:57AM

Re: Rewrite+resolver

Maxim Dounin December 28, 2013 07:36AM

Re: Rewrite+resolver

buddha December 28, 2013 08:26AM

Re: Rewrite+resolver

Daniel Podolsky December 28, 2013 09:14AM

Re: Rewrite+resolver

Daniel Podolsky December 28, 2013 09:16AM

Re: Rewrite+resolver

VBart December 28, 2013 10:52AM

Re: Rewrite+resolver

Daniel Podolsky December 29, 2013 06:16AM

Re: Rewrite+resolver

buddha December 29, 2013 08:02AM

Re: Rewrite+resolver

kemko December 29, 2013 08:46AM

Re: Rewrite+resolver

Maxim Dounin December 30, 2013 02:24PM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 321
Record Number of Users: 8 on April 13, 2023
Record Number of Guests: 421 on December 02, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready