Не удается открыть локальный хост в Microsoft Edge (Project Spartan) в предварительной версии Windows 10

Я установил предварительную версию Windows 10 и установил IIS.

Открыть "http://localhost" в Project Spartan, не удается подключиться.

У IE нет проблем. В чем проблема?


person sayingu    schedule 19.05.2015    source источник
comment
Это может быть причудой Spartan, поскольку он не находится в окончательной версии. Запуск CheckNetIsolation LoopbackExempt -a -n=Microsoft.Windows.Spartan_cw5n1h2txyewy из командной строки с повышенными привилегиями решает проблему?   -  person vcsjones    schedule 19.05.2015
comment
Начиная со сборки 10166, localhost теперь доступен по умолчанию в Microsoft Edge.   -  person Sampson    schedule 09.07.2015
comment
У меня была такая же проблема при попытке открыть http://my-fqdn (где my-fqdn — это полное доменное имя моего ноутбука). Как ни странно, http://localhost работал нормально. Принятый ответ ниже устранил мою проблему, хотя мне пришлось использовать исправление из командной строки. Простая установка флажка в about:flags не решила проблему для меня. (Это уже было проверено. Снятие отметки, перезапуск, повторная проверка, перезапуск также не работали.)   -  person Matt Varblow    schedule 25.05.2017
comment
Голосование за закрытие как невоспроизводимое, поскольку это больше не воспроизводится, и люди по какой-то причине все еще приходят сюда за решением своих проблем с более новыми версиями Windows 10.   -  person TylerH    schedule 15.12.2017


Ответы (8)


Итак, проблема в том, что Spartan Edge не имеет доступа к петлевым адресам, доступ к которым заблокирован для большинства приложений Магазина Windows.

Если вы используете Windows 10 RTM или сборку 10166, это можно сделать, перейдя к about:flags и установив флажок «Разрешить петлю на локальном хосте»:

введите здесь описание изображения

Изображение предоставлено Райаном Джоем и использовано с согласия.

Если вы используете предыдущую сборку Windows 10, можно использовать инструмент CheckNetIsolation, чтобы добавить ее в список LoopbackExempt. Используйте это из командной строки с повышенными правами:

CheckNetIsolation LoopbackExempt -a -n="Microsoft.MicrosoftEdge_8wekyb3d8bbwe"

Microsoft.MicrosoftEdge_8wekyb3d8bbwe — это идентификатор приложения Edge. Это можно определить, используя Get-AppxPackage в PowerShell и просеивая результаты для Spartan/Edge и используя PackageFamilyName.

Начиная со сборки 10158, PackageFamilyName изменилось с Microsoft.Windows.Spartan_cw5n1h2txyewy на Microsoft.MicrosoftEdge_8wekyb3d8bbwe.

person vcsjones    schedule 19.05.2015
comment
Я подозреваю, что этот обходной путь не потребуется, когда Spartan действительно выйдет. - person vcsjones; 19.05.2015
comment
Я работаю в команде Microsoft Edge. Это известная проблема, которую мы сейчас изучаем. - person Sampson; 09.06.2015
comment
Джонатан, означает ли это, что в конечном итоге Edge должен получить доступ к локальному хосту? И будет ли этот доступ к локальному хосту работать с любой веб-страницы или просто вручную в адресной строке? - person nemec; 12.06.2015
comment
Проверьте также эту тему: answers.microsoft.com/en-us/insider/forum/ - person Mikhail; 24.06.2015
comment
Я использую последнюю сборку 10240, попробуйте обе команды CheckNetIsolation, но ничем не отличаются, и я все еще не могу получить доступ к локальному хосту, было бы хорошо, если бы те, кто может подключиться к своему локальному хосту, разместили здесь несколько скриншотов. - person mutanic; 07.08.2015
comment
Когда я зашел в настройки разработчика, опция Разрешить петлю на локальном хосте уже была отмечена, и она все еще не работает. - person Metropolis; 21.08.2015
comment
Вместо того, чтобы «просеивать» ответы PowerShell, вы можете фильтровать их следующим образом: Get-AppxPackage | ? { $_.PackageFullName -like '*edge*' } - person Richard Hauer; 07.09.2015
comment
Ни одно из этих решений не сработало для меня. Решение для меня состояло в том, чтобы удалить доменное имя из списка надежных сайтов. stackoverflow.com/questions/32384571/ - person Evan de la Cruz; 10.10.2015
comment
Локальный хост @Sampson XAMPP работает со сбоями в Edge именно потому, что он настаивает на префиксе именованного сайта с localhost, например. localhost/mysite/, а не только mysite/, так как сайты localhost доступны в любом другом браузере. Например, у меня есть переписанный мод htaccess, который направляет info на /info.php. Из-за требования префикса localhost/ сайт ищет info.php не в mysite, а в корне, localhost, что приводит к сбою сайта. Этого не происходит, когда сайт запускается с живого сервера. Что можно сделать, чтобы исключить требование префикса? - person Tom; 18.10.2015
comment
@Tom Я настрою небольшой проект XAMPP со своей стороны, чтобы посмотреть, смогу ли я воспроизвести проблему. Можете ли вы поделиться примером своего файла .htaccess, чтобы обеспечить паритет между моей настройкой и вашей? - person Sampson; 19.10.2015
comment
@Sampson См. мою новую запись в этой теме ниже, так как она содержит подробную информацию о том, как настроен мой сервер XAMPP. Тем не менее, код .htaccess, о котором идет речь, выглядит следующим образом: Options +FollowSymLinks RewriteEngine on RewriteRule ^info/?$ /info.php [L] -- это легче прочитать в моем ответном посте внизу, поскольку форматирование позволяет . Спасибо за вашу помощь! - person Tom; 20.10.2015
comment
@Tom, использующий ответы, чтобы попросить разъяснений, может привести к удалению вашего ответа. Вместо этого я бы задал новый вопрос StackOverflow вместе с этим текстом и связал бы с ним Джонатана. - person vcsjones; 21.10.2015
comment
@Sampson Я разместил полное описание моей настройки и способ воспроизвести проблему на краю в качестве свежего ответа здесь, но один из читателей посоветовал мне переместить его в другое место. Я уже начал тему по этому поводу, поэтому я переместил туда свое объяснение, которое находится здесь: stackoverflow.com/questions/33193796/ - person Tom; 21.10.2015
comment
У меня был снят флажок «Разрешить петлю», и эта команда по-прежнему устранила мою проблему. - person Kevin Ghadyani; 19.04.2016
comment
Я снял флажок «Разрешить петлю», перезапустил Edge, затем проверил его, снова перезапустил Edge, и это сработало. - person bzuillsmith; 26.04.2016
comment
@Sampson, уже почти 2018 год, а он до сих пор не работает. - person Pedro Silva; 06.12.2017
comment
@Sampson Я работаю в команде Microsoft Edge. Это известная проблема, над которой мы сейчас работаем. — Sampson 09 июня 2015 г. И 3 года спустя, а он ВСЕ ЕЩЕ не работает. - person Stijn de Witt; 29.05.2018
comment
@Sampson, на дворе 2019 год, а он до сих пор не работает - какой прогресс, а. - person Oscar Jara; 15.04.2019
comment
@Sampson сейчас 2020, по-прежнему не может зацикливаться в Edge - person afarley; 27.01.2020
comment
Когда я ввожу адрес локального хоста в EDGE, он открывает IE с этим адресом, что теперь? :/ - person Muflix; 26.03.2020

Microsoft Edge работает с изоляцией сети по умолчанию из соображений безопасности. Чтобы включить замыкание на себя и отладить ваш локальный сервер, выполните следующую команду из оболочки с повышенными привилегиями, если у вас 10158 или новее:

CheckNetIsolation LoopbackExempt -a -n=Microsoft.MicrosoftEdge_8wekyb3d8bbwe

or

checknetisolation loopbackexempt -a -p=S-1-15-2-3624051433-2125758914-1423191267-1740899205-1073925389-3782572162-737981194

или этот, если у вас более старая версия

CheckNetIsolation LoopbackExempt -a -n=Microsoft.Windows.Spartan_cw5n1h2txyewy

В будущем обновлении вы сможете включить поддержку замыкания на себя на локальном хосте с помощью about:flags.

person Doris Chen    schedule 08.07.2015
comment
Для тех, кто не знаком с командой. Откройте командную строку, такую ​​как cmd или PowerShell или любую другую программу командной строки для Windows, и откройте ее от имени администратора, щелкнув правой кнопкой мыши. Введите команду из ответа выше и нажмите Enter. Закройте все окна MS Edge и снова откройте их. Вот и все. - person vee; 17.08.2016
comment
Пробовал оба кома от имени администратора. Также проверяется флаг Dev. Не работает. Всплывающее окно Вам понадобится приложение... Есть идеи? - person Tadas V.; 09.02.2017
comment
Итак, подождите, я могу получить доступ ко всему Интернету, но не к локальному хосту, «из соображений безопасности»? Кажется, нет смысла.... Я разработчик. Доступ к локальному хосту вроде... знаете ли... важный. Поскольку это не работает, я просто не тестирую на Edge. Интересно, как это сработает для браузера Edge. Я предполагаю, что невозможность протестировать его будет означать, что он получит мало любви от разработчиков. Я знаю, что больше не собираюсь повторять махинации с IE типа «просто установите виртуальные машины, чтобы протестировать свой веб-сайт»! - person Stijn de Witt; 29.05.2018
comment
Столкнулся с этой проблемой на Win10 pro build 18363. Так что это все еще актуально. Флаги разработчиков были проверены. Решил это с помощью первой команды. - person Pantalaimon; 03.12.2019

Для последней сборки (10158) за меня это сделала следующая команда:

CheckNetIsolation LoopbackExempt -a -n=Microsoft.MicrosoftEdge_8wekyb3d8bbwe

Хитрость заключается в том, чтобы использовать команду Get-AppxPackage PowerShell, чтобы узнать имя семейства приложения Edge, как vcsjones, упомянутого.

person Usman    schedule 30.06.2015
comment
Я должен сделать CheckNetIsolation LoopbackExempt -a -n="Microsoft.MicrosoftEdge_8wekyb3d8bbwe" - обратите внимание на кавычки вокруг фамилии - person Laurence; 22.12.2017

Начиная с Windows 10 Build 10166+ (доступно сегодня через программу предварительной оценки Windows), доступ к локальному хосту по умолчанию доступен в Microsoft Edge без выполнения команды CheckNetIsolation, указанной в предыдущих ответах.

Вы можете отключить этот доступ через «about:flags», если хотите иметь еще более безопасную конфигурацию.

person Charles Morris - MSFT    schedule 09.07.2015
comment
Я могу использовать «localhost» и официальный IP-адрес сборки 10240, но, к сожалению, имя компьютера использовать нельзя. - person Simon; 02.09.2015
comment
Он также не может получить доступ к субдоменам localhost — каждый из моих веб-проектов настроен как project1.localhost:8080, project2.localhost:8080 и т. д., так как я могу использовать корневые относительные URL-адреса — однако Edge не может получить к ним доступ - person Brendan; 26.04.2016
comment
На самом деле, когда я обращаюсь к локальному хосту, он работает один раз. Затем, когда я пытаюсь перезагрузить страницу, она снова появляется с сообщением «вам нужно приложение для этого». Так что тестировать с Edge действительно неудобно! - person Stijn de Witt; 29.05.2018

Пожалуйста, выполните следующие действия:

1.

введите здесь описание изображения

2.

Скопируйте этот код

CheckNetIsolation LoopbackExempt -a -n=Microsoft.MicrosoftEdge_8wekyb3d8bbwe

3.

введите здесь описание изображения

**

Дело сделано!

person Vinod Kumar    schedule 06.06.2019

Добавьте поддомен в C:\Windows\System32\drivers\etc\hosts (Windows 10)

person Prosky    schedule 12.09.2016
comment
127.0.0.1 субдомен.localhost - person Prosky; 12.09.2016
comment
Я так добавил - безуспешно. - person Chris Kepinski; 24.03.2017

Перейдите в C:\Windows\System32\drivers\etc, сохраните копию файла hosts для резервного копирования, откройте файл hosts как администратор, удалите или закомментируйте все строки с 127.x.x.x или localhost...

перезагрузить пк.

person Ali Mustafa    schedule 28.12.2016

У меня не работала ни команда CheckNetIsolation LoopbackExempt -a -n=Microsoft.MicrosoftEdge_8wekyb3d8bbwe, ни ручное включение «Разрешить петлю локального хоста» в Edge.

Что сработало, так это следующее:

  1. Отредактируйте файл C:\Windows\System32\drivers\etc\hosts и добавьте сопоставление пользовательского имени хоста с 127.0.0.1, например 127.0.0.1 local.

  2. Откройте «Свойства обозревателя» и добавьте http://local на сайты локальной интрасети.

person d.i.joe    schedule 17.10.2018