У меня есть клиент, у которого настроен сайт в iis7.5 с asp.net 4.0. Сайт настроен со статическим IP-адресом, с действующим сертификатом с подстановочными знаками, у него есть заголовки, настроенные как подстановочные знаки leavemanagement.co.za и www.leavemanagement.co.za.
Клиенты получают доступ к приложению, используя название своей компании в качестве префикса субдомена для правильного входа в систему и т. Д. Я думаю, что приложение использует префикс как форму идентификации, чтобы возвращать правильную информацию после входа в систему. Так, например, вы идете http://demo.leavemanagement.co.za или https://leavemanagement.co.za чтобы иметь возможность получить ваш логин, если вы используете любой из этих способов вручную, сайт работает на 100% нормально.
Я пытался использовать различные правила перезаписи web.config для автоматического переключения на https, но все, что это делает, вызывает ошибку приложения. как показано ниже
Server Error in '/' Application.
В экземпляре объекта не задана ссылка на объект. Описание: необработанное исключение произошло во время выполнения текущего веб-запроса. Просмотрите трассировку стека для получения дополнительных сведений об ошибке и ее происхождении в коде.
System.NullReferenceException: ссылка на объект не установлена на экземпляр объекта.
Во время выполнения текущего веб-запроса возникло необработанное исключение. Информацию о происхождении и местонахождении исключения можно определить с помощью трассировки стека исключений ниже.
Трассировки стека:
[NullReferenceException: Object reference not set to an instance of an object.]
Leave.Core.Security.FormsAuthenticationUserStateModule.PreSendRequestHeaders(Object sender, EventArgs e) +65
System.Web.SendResponseExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +137
System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +69
правил перезаписи, которые я пробовал, было множество, последнее, что мы пробовали, это
<rewrite>
<rules>
<rule name="HTTP to HTTPS redirect" stopProcessing="true">
<match url="(.*)" />
<conditions>
<add input="{HTTPS}" pattern="off" ignoreCase="true" />
</conditions>
<action type="Redirect" url="https://{HTTP_HOST}/{R:1}"
redirectType="Permanent" />
</rule>
</rules>
<outboundRules>
<rule name="Add Strict-Transport-Security when HTTPS" enabled="true">
<match serverVariable="RESPONSE_Strict_Transport_Security"
pattern=".*" />
<conditions>
<add input="{HTTPS}" pattern="on" ignoreCase="true" />
</conditions>
<action type="Rewrite" value="max-age=31536000" />
</rule>
</outboundRules>
</rewrite>
Если кто-то может мне помочь, пожалуйста ..