Hi, we have a problem configuring a multi website store and store view site. Magento 2.2.2 installed with composer Ubuntu 16.04 Php 7.1 nginx 1.12 Magento use url store code : yes Every store view ha store base url set to the domain (ex. second.store.it) and store base url link setup with {{unsecure_base_url}} We have a this store setup: Default Website > Default Store > Default store view ---->We think to left this default store view for admin purpose. URL > magento2.store.it DEFAULT STORE VIEW URL CODE default -> Italian Second Website > Second Store > n Second store View (one x every language needed). URL > second.store.it ---->We wont to use this store for sell. SECOND STORE URL CODE sr_it -> Italian sr_en -> English sr_es -> Spain sr_xy -> other language Third Website > Third Store > Third Store View URL > third.store.it ----> We wont to use this for sell other product THIRD STORE VIEW URL CODE it -> Italian We have this virtual server setup: NOTE we have added the $MAGE_RUN_CODE MAGE_RUN_CODE php-fpm map in the virutalhost config because in the nginx.config.sample provided by magento there is no this default config (the magento dev doc for 2.2.2 say "use default magento config nginx.config.sample to pass the value of the variables to php, i think there is an error in the documentation because there is no section in the nginx config sample.) ####SECOND.STORE.IT VIRTUALHOST map $http_host $MAGE_RUN_CODE { hostnames; default sr_it; second.store.it sr_it; } map $request_uri $MAGE_RUN_CODE { default sr_it; ~^/sr_en/ sr_en; } server { listen 80; add_header mage-run-code $MAGE_RUN_CODE; server_name second.store.it; set $MAGE_ROOT /var/www/htdocs/magento2; #set $MAGE_MODE developer; #set $MAGE_RUN_TYPE store; #set $MAGE_RUN_CODE sr_it; include /var/www/htdocs/magento2/nginx.conf.sample; location ~ \.php$ { fastcgi_param MAGE_RUN_CODE $MAGE_RUN_CODE; fastcgi_param MAGE_RUN_TYPE store; } } #####END SECOND.STORE.IT VIRTUALHOST #####MAGENTO2.STORE.IT VIRTUALHOST map $http_host $MAGE_RUN_CODE { hostnames; # default default; magento2.store.it default; } server { listen 80; add_header mage-run-code $MAGE_RUN_CODE; server_name magento2.store.it; set $MAGE_ROOT /var/www/htdocs/magento2; #set $MAGE_MODE developer; #set $MAGE_RUN_TYPE store; set $MAGE_RUN_CODE default; include /var/www/htdocs/magento2/nginx.conf.sample; location ~ \.php$ { fastcgi_param MAGE_RUN_CODE $MAGE_RUN_CODE; fastcgi_param MAGE_RUN_TYPE store; } } ####END MAGENTO2.STORE.IT VIRTUALHOST map $http_host $MAGE_RUN_CODE { hostnames; default it; third.store.it it; } server { listen 80; add_header mage-run-code $MAGE_RUN_CODE; server_name third.store.it; set $MAGE_ROOT /var/www/htdocs/magento2; #set $MAGE_MODE developer; #set $MAGE_RUN_TYPE store; #set $MAGE_RUN_CODE it; include /var/www/htdocs/magento2/nginx.conf.sample; location ~ \.php$ { fastcgi_param MAGE_RUN_CODE $MAGE_RUN_CODE; fastcgi_param MAGE_RUN_TYPE store; } } ####THIRD.STORE.IT VIRTUALHOST #####END THIRD.STORE.IT VIRTUALHOST Now the problem is this: If we call the url second.store.it/sr_it or second.store.it/sr_en or we use langauge switcher all work great. But if we call the url http://second.store.it Magento redirect (with a 302 moved temp header) to the deafult website, default store view installation so http://magento2.store.it/default/?SID=cre9q00jvmpki7alk7imvljbcr ####HEADER#### Request URL: http://second.store.it/ Request Method: GET Status Code: 302 Found Remote Address: 46.xxx.xxx.xxx:80 Referrer Policy: no-referrer-when-downgrade Response Headersview source Cache-Control: max-age=0, must-revalidate, no-cache, no-store Connection: keep-alive Content-Encoding: gzip Content-Type: text/html; charset=UTF-8 Date: Tue, 13 Feb 2018 17:19:16 GMT Expires: Mon, 13 Feb 2017 17:19:16 GMT Location: http://magento2.store.it/default/?SID=cre9q00jvmpki7alk7imvljbcr mage-run-code: it Pragma: no-cache Server: nginx/1.12.2 Set-Cookie: PHPSESSID=cre9q00jvmpki7alk7imvljbcr; expires=Tue, 13-Feb-2018 18:19:16 GMT; Max-Age=3600; path=/; domain=.pineappleitaly.com; HttpOnly Transfer-Encoding: chunked Vary: Accept-Encoding X-Content-Type-Options: nosniff X-Frame-Options: SAMEORIGIN X-XSS-Protection: 1; mode=block So we can see the right url call to second.store.it, a redirect to default website, defautl store view with 302, but the headers mage-run-code show "it" that is the store view code of the third.store.it store view instead "sr_it" that must be the default for second.store.it store view If we try http://third.store.it/it all work great, we see third webiste store "it" view. This time if we call http://third.store.it we are redirect to magento2.store.it/default/, header show the "right" mage run code initially asked : "mage-run-code: it" Why?