Назад | Перейти на главную страницу

Назначение субдомена вложенной папке приложения ASP.NET

У меня есть веб-приложение ASP.NET, работающее на http://www.mydomain.com. Мы хотим создать http://company.mydomain.com и укажите его в подпапке приложения ASP.NET. Когда мы это делаем, мы получаем ошибки, что он не может найти типы данных, предположительно потому, что он не может найти папку / bin на один уровень выше.

Есть ли параметр, который мне нужно изменить, чтобы разрешить это? Спасибо!

ASP.NET действительно не любит так работать. Лучше всего настроить переопределение URL-адресов или перенаправление, чтобы перенаправить трафик, поступающий с subdomain.example.com, на example.com/whereyouwantthemtogo.

Если у вас есть IIS7, вы также можете настроить переопределение URL-адресов, чтобы URL-адреса выглядели так, как вы хотите, и не боролись с ASP.NET, но я подозреваю, что у приложения будет много проблем с путями с этим подходом - у него будут проблемы с выяснением того, находится в sub-uri или нет и неправильно отображает пути к статическому ресурсу.

Другой вариант, если код в папке не является частью приложения ASP.NET, состоял бы в том, чтобы сделать папки родственниками (то есть / web / www и / web / subdomain), а затем указать как виртуальный каталог, так и виртуальный сайт там.

Раньше был параметр, разрешающий это, но Microsoft удалила его, поскольку это была зияющая дыра в безопасности. В вашем случае вы захотите рассмотреть возможность создания виртуального каталога в подпапке, которая указывает на папку более высокого уровня / bin. Таким образом, доступ к company.mydomain.com/bin действительно попадет в правильный код.

Если www.mydomain.com укоренен в F:\Inetpub\wwwroot, подпапка F:\Inetpub\wwwroot\subdom, с папкой bin в F:\Inetpub\wwwroot\bin, Вам нужно создать виртуальный каталог на сайте company.mydomain.com, который указывает на F:\Inetpub\wwwroot\bin.