Nginx-ru mailing list archive (nginx-ru@sysoev.ru)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
верните server_na me *; # пожалуй ста :)
ситуация:
server {
listen 80 default
accept_filter=httpready;
include include/rewrite;
include include/location_error;
set $_document_root
/srv/www/vhosts/service/core/;
root $_document_root;
server_name
#список проксируемых виртуальных
хостов
www.somesite.ru
www.somesite2.ru
www.somesite3.ru
www.company.ru
;
location / {
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_set_header X-Real-URI
$request_uri;
proxy_set_header X-Real-Request-Scheme
$scheme;
proxy_redirect false;
proxy_pass
http://http-cluster$request_uri;
}
}
server {
listen 80;
server_name
secure.company.ru
secure2.company.ru
;
rewrite ^(.*)
https://$host$uri$is_args$args permanent;
}
server {
listen 80;
server_name .somesite.ru;
rewrite ^(.*)
http://www.somesite.ru$1 permanent;
}
server {
listen 80;
server_name .somesite2.ru;
rewrite ^(.*)
http://www.somesite2.ru$1 permanent;
}
server {
listen 80;
server_name .somesite3.ru;
rewrite ^(.*)
http://www.somesite3.ru$1 permanent;
}
server {
listen 80;
server_name *;
rewrite ^(.*) http://www.company.ru$1
permanent;
}
на server_name *; естественно выдаёт ошибку в
конфиге
единственный work-around вот такой:
server_name
127.0.0.1
192.168.4.1
192.168.4.2
10.20.30.40
10.20.30.41
~^(.*)$
;
т.е. перечисляю все ИП адреса сервера и
регекспом делаю аналог *
всем этим бредом, который я называю
конфигом, я хочу добиться следующего:
при обращении к несуществующему
виртуальному хосту следует рерайт на
сайт компании
при обращении к сайтам клиентов,
следует рерайт на красивое имя www. и тд
(если это нужно)
виртуальные хосты в отдельном конфиге
вот наверно единственное, для чего
нужно server_name *; ...
|