site.com
На нём есть страница: site.com/page
Как сделать чтобы эта страница (site.com/page) открывалась также по адресу page.site.com без редиректа?
Версия nginx/1.10.3 (Ubuntu)
Текущий конфиг:
server {
if ($host = www.site.com) {
return 301 https://site.com$request_uri;
}
server_name site.com www.site.com;
location / {
proxy_redirect off;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://127.0.0.1:3000/;
}
listen [::]:443 ssl ipv6only=on; # managed by Certbot
listen 443 ssl; # managed by Certbot
ssl_certificate /etc/letsencrypt/live/site.com/fullchain.pem; # managed by Certbot
ssl_certificate_key /etc/letsencrypt/live/site.com/privkey.pem; # managed by Certbot
include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot
}
как варивант сделать новый профиль (аналогичный приведеному), где в server_name будет ~^(?<subdomain>[a-z0-9]+)\.site\.com$ и в корне на одном уровне с location / будет rewrite ^/$ /$subdomain last;. по логике он сделает реврайт внутри (для юзера адрес не поменяется) для page.site.com/ на page.site.com/page и бекенд из location подцепит сие. В этом направлении.
Обсуждают сегодня