Мне пришлось недавно стереть мой компьютер, и я снова настраиваю свою среду разработки, используя WAMP.

После установки WAMP, если я захожу на http://localhost вместо домашней страницы WAMP, меня перенаправляют на http://x.x.x.x , где x.x.x.x - мой IP.

У меня была эта проблема на другом ПК, и после того, как я установил правила входа для Apache HTTP Server в настройках брандмауэра Windows, чтобы все домены исправили эту проблему. Я применил это к своему ПК, и проблема, похоже, отсутствует для Internet Explorer, тогда как для Chrome и Firefox проблема с локальным хостом для моего IP-перенаправления сохраняется даже после очистки кэша для каждого браузера.

Мой файл C:\Windows\System32\drivers\etc\hosts выглядит следующим образом:

127.0.0.1       localhost
::1             localhost

и мои правила брандмауэра выглядят так:

В настоящее время я не использую vhosts, и я нахожусь в сети на своем рабочем месте (если это имеет какие-либо последствия?)

Я также столкнулся с той же проблемой при использовании Laragon, который использует vhosts, и всякий раз, когда я посещал виртуальный хост, например, mysite.dev, он тоже не работал должным образом.

Мой вопрос на форуме Laragon: https://forum.laragon.org/topic/126/accessing-mysite-dev-redirects-to-url-which-shows-index-php-at-root-folder/3

1 ответ1

0

Эта проблема

Я за прокси, который используется для просмотра веб-страниц на моем рабочем месте. Прокси, похоже, испортил разрешение DNS, когда я звонил localhost (при использовании wamp) или одному из моих vhosts (при использовании Laragon).

Это было ясно, когда я запустил в командной строке следующее: ping site.dev Я получил ожидаемый ответ от 127.0.0.1 . Однако, когда я заходил на site.dev в моем браузере, меня перенаправляли на мой IP-адрес, поэтому мой файл etc/hosts игнорировался для разрешения dns.

Разница между ними заключается в том, что браузер использует прокси, а командная строка - нет!

Решение

Попробовав много разных решений, которые, казалось, работали только для localhost (на wamp), но не vhosts (на Laragon), я наконец-то нашел решение, которое на самом деле было настолько простым!

Итак, для chrome я просто перешел в chrome://settings/ > Network - Изменить настройки прокси> Настройки локальной сети> Proxy Server - Advanced

Затем в текстовое поле Исключения я добавил следующее:

*.dev;localhost;127.0.0.1

Вот скриншот моих настроек из Chrome/ Свойства обозревателя

И это сработало! Надеюсь, что это может помочь кому-то еще.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .