Использование номера порта в файле хоста Windows

Вопрос:После установки TeamViewer я изменил порт wampserver на 8080, поэтому адрес http://localhost:8080. Для файла хоста, расположенного в C:WINDOWSsystem32driversetc , я также внес изменения, как показано ниже ПЕРЕД 127.0.0.1 www.example.com ПОСЛЕ 127.0.0.1:8080 www.example.com Когда я захожу на www.example.com, он не перенаправляется на мой сервер wampserver, как я могу это исправить? Лучший ответ: Файл hosts предназначен только

Вопрос:

После установки TeamViewer я изменил порт wampserver на 8080, поэтому адрес http://localhost:8080.

Для файла хоста, расположенного в C:WINDOWSsystem32driversetc , я также внес изменения, как показано ниже

ПЕРЕД
127.0.0.1 www.example.com

ПОСЛЕ
127.0.0.1:8080 www.example.com

Когда я захожу на www.example.com, он не перенаправляется на мой сервер wampserver, как я могу это исправить?

Лучший ответ:

Файл hosts предназначен только для разрешения имени хоста (как для Windows, так и для Unix-подобных систем). Вы не можете указывать номера портов там, и вы не можете делать то, что хотите, с общей конфигурацией на уровне ОС – браузер выбирает порт для выбора.

Так что используйте закладки или что-то в этом роде.
(Некоторое программное обеспечение брандмауэра/маршрутизации может разрешить перенаправление исходящего порта, но это не похоже на привлекательный вариант для этого.)

Ответ №1

То, что вы хотите, может быть достигнуто путем изменения файла hosts через приложение Fiddler 2.

Выполните следующие действия:

  • Установить Fiddler2
  • Перейдите в меню Fiddler2: – Инструменты > HOSTS.. (Нажмите, чтобы выбрать)
  • Добавьте строку, подобную этой: –

    localhost:8080 www.mydomainname.com

  • Сохраните файл, а затем проверьте www.mydomainname.com в браузере.

Ответ №2

Мне удалось добиться этого с помощью Windows сетевого инструмента netsh.

Как указывает Мэт: файл hosts предназначен только для разрешения имен хостов, поэтому сочетание этих двух дел помогло мне.

Содержание

  1. Пример
  2. Обзор
  3. действия
  4. Ссылки на ресурсы:

Пример

Обзор

example.app:80 | <—Link by Hosts File +—> 127.65.43.21:80 | <—Link by netsh Utility +—> localhost:8081

действия

  • Запустил мой сервер на localhost:8081
  • Добавил мой “локальный DNS” в файл хостов в виде новой строки
    • 127.65.43.21 example.app
      • Можно использовать любой свободный адрес в сети 127.0.0.0/8 (127.x.x.x).
      • Примечание. Я предполагаю, что 127.65.43.21:80 не занят другой службой.
      • Вы можете проверить с помощью netstat -a -n -p TCP | grep «LISTENING»
  • добавил следующую сетевую конфигурацию с помощью утилиты netsh command
    • netsh interface portproxy add v4tov4 listenport=80 listenaddress=127.65.43.21 connectport=8081 connectaddress=127.0.0.1
  • Теперь я могу получить доступ к серверу на

Примечания:
– Эти команды/изменения файла должны выполняться с правами администратора

.- netsh portproxy нужны библиотеки ipv6 даже для использования только v4tov4, обычно они также будут включены по умолчанию, в противном случае установите их с помощью следующей команды: netsh interface ipv6 install

Вы можете увидеть запись, которую вы добавили с помощью команды:

netsh interface portproxy show v4tov4

Вы можете удалить запись с помощью следующей команды:

netsh interface portproxy delete v4tov4 listenport=80 listenaddress=127.65.43.21

Ссылки на ресурсы:

Ответ №3

Fiddler2 → Правила → Пользовательские правила

затем найдите функцию OnBeforeRequest в следующем конце script в конце:

if (oSession.HostnameIs(«mysite.com»)){ oSession.host=»localhost:39901″; } Ответ №4

-Вы можете использовать любой свободный адрес в сети 127.0.0.0/8, в моем случае это необходимо для флешки python, и это то, что я сделал:
добавьте эту строку в файл hosts (вы можете найти ее под Windows: C:WindowsSystem32driversetc):

127.0.0.5 flask.dev

  • Убедитесь, что порт является портом по умолчанию “80”, в моем случае это то, что в колбе питона: app.run(«127.0.0.5″,»80»)

  • теперь запустите свой код и просмотрите flask.dev

Ответ №5

Самый простой способ – использовать Ergo как ваш обратный прокси-сервер:
https://github.com/cristianoliveira/ergo

Вы устанавливаете свои сервисы и свои IP: PORT и ergo перенаправляет его для вас:).

Вы можете добиться того же, используя nginx или apache, но вам нужно будет их настроить.

Ответ №6

Если происходит то, что у вас есть другой сервер, работающий на localhost, и вы хотите дать этому новому серверу другое локальное имя хоста, например
http://teamviewer/

Я думаю, что фактически вы ищете функциональность виртуальных хостов. Я использую Apache, поэтому я не знаю, как это поддерживают другие веб-демоны. Возможно, это называется Alias. Вот документация Apache:

Примеры виртуальных хостов Apache

Ответ №7

Использование netsh с connectaddress = 127.0.0.1 не работает для меня.

Несмотря на то, что я искал повсюду в Интернете, я не смог найти решение, которое решило бы эту проблему для меня, которое заключалось в использовании connectaddress = 127.xxx (т.е. любого адреса 127. ipv4, просто не 127.0.0.1), так как это похоже на обратную ссылку на localhost просто то же самое, но без ограничения, так что петля работает в netsh.

Ответ №8

Вам понадобится HTTP-сервер NGNIX или Apache в качестве прокси-сервера для пересылки http-запросов в соответствующее приложение → которое прослушивает определенный порт (или делает это с CNAME, предоставляющей хостинговую компанию). Это наиболее эффективное решение, и это просто очень простой способ добавления новых поддоменов или автоматического добавления новых доменов, когда записи DNS направлены на сервер.

Оцените статью
Добавить комментарий