Nginx-ru mailing list archive (nginx-ru@sysoev.ru)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Rewrite+resolver
- To: nginx-ru@xxxxxxxxx
- Subject: Rewrite+resolver
- From: "buddha" <nginx-forum@xxxxxxxx>
- Date: Sat, 28 Dec 2013 05:57:13 -0500
- Dkim-signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=selenium.jlkhosting.com; s=x; h=Date:Sender:From:Message-ID:Content-Transfer-Encoding:Content-Type:Subject:To; bh=sZxkSoKDr7or7viW0Dz9c4DrNiyl8hZeLfbz5bMQVuU=; b=i2vJxUzO7aVTay5R8m+/jbSN12M5hqPbo1SZnJWADhIkDCCMU1Cdy4Ql7oOqC/n/b6nLKteurDqlebKQ+yBYNP5YFrFTamwkBHvlrdhPc07CiA5gnTFagucnPeB1ARbSmfZeyPaA392M+EV4ZW0bPp6xLY7Ns4pI94b3XYUwZHU=;
привет всем.
есть 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;
}
}
################################
Posted at Nginx Forum:
http://forum.nginx.org/read.php?21,245884,245884#msg-245884
_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://mailman.nginx.org/mailman/listinfo/nginx-ru
|