IISExpress не удается найти страницу ssl под управлением localhost с Visual Studio 2013
когда я получаю доступ к сайту как http://localhost:26049 сайт работает нормально. Если я попытаюсь получить доступ к сайту с помощью https://localhost:44319, Я получаю страница не найдена.
Это мои свойства проекта:
Это из моей конфигурации приложения IISExpress:
<site name="MVC Authentication" id="2">
<application path="/" applicationPool="Clr4IntegratedAppPool">
<virtualDirectory path="/" physicalPath="F:ProjectsMySiteTest" />
</application>
<bindings>
<binding protocol="https" bindingInformation="*:44319:localhost" />
<binding protocol="http" bindingInformation="*:26049:localhost" />
</bindings>
</site>
9 ответов
получил решение от этого поста. Пришлось удалить все сертификаты localhost и восстановить IIS Express. Спасибо @Шатин
https://stackoverflow.com/a/22818853/853295
обязательно удалите все предыдущие сертификаты "localhost", так как они могут конфликтовать с сертификатами, созданными IIS Express. У меня была такая же ошибка (ERR_SSL_PROTOCOL_ERROR), и мне потребовалось много часов, чтобы, наконец, понять это после опробования многих многих "решений". Моя ошибка была в том, что я создал свой собственный сертификат "localhost", и их было два. Мне пришлось удалить оба и IIS Express воссоздать его.
вот как вы можете проверить и удалить сертификат "localhost":
при запуске введите - > mmc.исполняемый, Файл -> Добавить/удалить оснастку..., Выберите сертификаты -> добавить -> учетная запись компьютера -> локальный компьютер, Проверьте под сертификаты > личные > сертификаты. Убедитесь, что существующий сертификат localhost имеет понятное имя " разработка IIS Express Сертификат." Если нет, удалите его. Или если несколько, удалите все. В Visual Studio выберите проект и на вкладке свойства включите SSL=true. Сохранить, построить и запустить. IIS Express создаст новый сертификат "localhost".
Примечание: Если это не работает, попробуйте следующее: обязательно отключите IIS Express на VS project и остановите все запущенное приложение на нем до удаления сертификата "localhost". Кроме того, вы можете перейти в "Панель управления > программы" и восстановить IIS Express.
пожалуйста, ради любви к Богу, попробуйте это, прежде чем вы погрязнете в каком-то ненужном сумасшествии!
(видимо IIS Express зарезервировал диапазон портов 44300 - 44399 моделирования протокол SSL)
шаги, за которыми я следую, чтобы решить эту проблему (я использую vs2015)
1) Перейти к панели управления
2)Добавить Удалить Программы
3) Ремонт IIS Express
4) перезагрузил компьютер
4) Далее перейдите в Мои документы - > IIS Express - >Config Files
5) Возьмите их копию и удалите эти файлы оттуда
6) удалить все элементы C:\Temp
7)проверить .vs папка в вашем файле sln и goto папка config в нее
8) возьмите копию этого также и удалите файлы внутри него
9)очистите ваше решение
10) перезапустите Visual studio
11) построить и запустить
(Я скопировал чистые файлы конфигурации с моей машины коллег-в местах, упомянутых выше
1]В Документах
2] .папка против
Я полагаю, просто запустив IISExpress, и он воссоздаст файл для вас. Exe находится по адресу: "c:\Program Файлы\IIS Express\iisexpress.исполняемый."
)
похоже, что IIS Express не запускает проект под URL-адресом https. Попробуйте изменить URL-адрес проекта по умолчанию на SSL в
"веб-проект- > свойства - >веб - > URL проекта" к URL-адресу с https.
в моем случае при предыдущем запуске IIS Express добавил сертификат (называемый localhost) в папку Personal > Certificates. Но я получал недопустимую ошибку сертификата в приложении. Поэтому я переместил сертификат localhost в доверенный корень...> Сертификаты и все начало работать.
на следующий день, когда я запускаю то же приложение, я начал получать эту ошибку ERR_CONNECTION_RESET. Все, что мне нужно было сделать, это переместить сертификат localhost из доверенного корня...> Папка сертификатов и обратно в папку Personal > Certificates.
Если сертификат "localhost" отсутствует в любой из папок, вам необходимо восстановить/переустановить IIS Express с панели управления > установка и удаление программ. Это восстановит сертификат localhost.
Visual Studio 2015, IIS Express, Windows 8, Asp.net MVC
У меня были эти проблемы SSL с Chrome и Edge.
после долгого процесса рассмотрения всех этих ответов и предложений, что в конечном итоге сработало для меня (asp.net mvc 5, VS2015) был смесью ответов выше
- добавить сертификаты оснастки, как показано выше, удаление сертификатов mutlitple и восстановить новый сертификат: спасибо @garethb
-
проблема тогда находится вокруг уровня доверия этого сертификата. Следующая ссылка показывает шаг за шагом процесс экспорта и импорта (а не просто перемещения) локального сертификата https://blogs.msdn.microsoft.com/robert_mcmurray/2013/11/15/how-to-trust-the-iis-express-self-signed-certificate/
- при закрытии всего, а затем перестроить и развернуть в IIS Express, у меня больше нет ошибок SSL в любом браузере
ни один из этих вариантов не работал для меня в VS2017 с той же проблемой. Это решение с использованием iisexpresscmdadmin с самозаверяющим сертификатом заставило мой сайт, наконец, подтянуть:
У меня была та же проблема. Мой HTTP-сайт работал нормально, но IIS Express просто не запускал мой сайт SSL. В то время как это было накануне.
моя проблема заключалась в том, что я как-то испортил aplicationhost.конфигурационный файл. Мой проект был зарегистрирован дважды:
<site name="Test.Api" id="5">
<application path="/" applicationPool="Clr4IntegratedAppPool">
<virtualDirectory path="/" physicalPath="C:\Users\bartd\Source\Repos\Test\Test.Api" />
</application>
<bindings>
<binding protocol="http" bindingInformation="*:27108:localhost" />
</bindings>
</site>
<site name="Test.Api(1)" id="6">
<application path="/" applicationPool="Clr4IntegratedAppPool">
<virtualDirectory path="/" physicalPath="C:\Users\bartd\Source\Repos\Test\Test.Api" />
</application>
<bindings>
<binding protocol="http" bindingInformation="*:27108:localhost" />
<binding protocol="https" bindingInformation="*:44349:localhost" />
</bindings>
</site>
удаление обеих записей и создание нового виртуального каталога со страницы свойств проекта исправили проблему для меня.
используя VS 2017, ни одно из этих решений не работало, даже после экспорта сертификата и импорта в Chrome. Это, наконец, сработало после того, как я сделал две вещи: (1) скопировал сертификат localhost из Personal в Trusted Root (2) изменен номер порта в свойствах проекта с 61899 на 44300 Я думаю, что просто Шаг (2) сделал трюк.