Magento 2.2 Nginx мульти-сайт одного домена не получает магазин
Я установил свежую установку 2.2.4 EE (никаких сторонних модулей или чего-либо еще) и настраиваю как мульти-сайт на одном домене. Поскольку это в конечном итоге заменяет существующий сайт, я получил его с использованием субдомена "prod" для основного сайта, а каждый другой сайт находится на субдомене. Итак, вот пример моей установки:
prod.site.com
corpA.prod.site.com
corpB.prod.site.com
Я использовал Nginx и letsencrypt для настройки каждого сайта в соответствии с документацией, а в конфигурации хранилища администратора я установил все 4 базовых URL-адреса для соответствия. Вот пример записи nginx
map $http_host $MAGE_RUN_CODE {
corpA.prod.site.com corpa;
}
map $http_host $MAGE_RUN_TYPE {
corpA.prod.site.com website;
}
server {
server_name corpA.prod.site.com;
set $MAGE_ROOT /var/www/html/magento2;
include /var/www/html/magento2/nginx.conf.sample;
listen 443 ssl; # managed by Certbot
ssl_certificate /etc/letsencrypt/live/corpA.prod.site.com/fullchain.pem; # managed by Certbot
ssl_certificate_key /etc/letsencrypt/live/corpA.prod.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 {
if ($host = corpA.prod.site.com) {
return 301 https://$host$request_uri;
} # managed by Certbot
listen 80;
server_name corpA.prod.site.com;
return 404; # managed by Certbot
}
Я также добавил следующее в файл nginx.conf.sample, как они упоминались в документации.
fastcgi_param MAGE_RUN_TYPE $MAGE_RUN_TYPE;
fastcgi_param MAGE_RUN_CODE $MAGE_RUN_CODE;
У меня не включен SID хранилища (общий доступ пользователей установлен на уровне веб-сайтов, мы не делим пользователей между сайтами), добавлен код магазина, добавленный к пути, или настроена переадресация 302, потому что я хочу, чтобы субдомен был указан в URL, когда вы находитесь на этом сайте.
Зайдя на мой corpA.prod.site.com загружает, но показывает контент с основного веб-сайта, такой как имя сайта и домашняя страница (и я получаю ошибки из разных источников, когда он пытается загрузить статический контент / информацию о клиенте с prod.site.com Веб-сайт). URL-адрес правильный, и его загрузка правильного сертификата.
То, что я хочу решить, это
1.) Как я могу получить правильный сайт для загрузки? Я полагаю, что я правильно устанавливаю MAGE_RUN_CODE и URL / сертификат в порядке, хотя, похоже, он позволяет загрузить основной сайт.
2.) Как я могу исправить эти ошибки перекрестного происхождения? Я не уверен, почему статический контент не соответствует базовому URL.
Я видел некоторые посты, рассказывающие об изменении файла index.php, это обязательно?