Я хочу перенаправить условно на основе имени сервера, но то, куда я перенаправляюсь, также зависит от поддомена. Так, например, вот мой базовый конфиг
server {
listen 80;
return 301 https://$host$request_uri;
}
server {
listen 443;
server_name company.com compa.ny;
ssl on;
ssl_client_certificate /etc/ssl/certs/godaddy_CA.crt;
ssl_certificate /etc/ssl/certs/wildcard.company.com.crt;
ssl_certificate_key /etc/ssl/private/wildcard.company.com.key;
ssl_prefer_server_ciphers on;
root /var/www/company;
access_log /var/log/nginx/nginx.access.log;
error_log /var/log/nginx/nginx.error.log;
client_max_body_size 8M;
location ^~ /application {
proxy_set_header HOST $http_host;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_pass http://127.0.0.1:8080;
}
}
Я хочу иметь что-то, что ищет хост с коротким URL-адресом «compa.ny» и перенаправляет на «company.com/shortUrldRedirector», и я также хочу включить поддомен, поэтому в dev или qa это будет работать правильно:
https://compa.ny/abc123 -> https://company.com/shortUrldRedirector/abc123
and
https://dev.compa.ny/abc123 -> https://dev.company.com/shortUrldRedirector/abc123
Я вижу, что есть переменная конфигурации $server_name
, но как мне выполнить вышеуказанные перенаправления с учетом поддомена?