Вы не можете отобразить номер порта в / etc / hosts. Вместо этого вы можете определить как 127.0.0.1 api.mydomain.comи получить к нему доступ в браузере, какapi.mydomain.com:8080
Fizer Khan
Я где-то читал, что днс поддерживает это. У вас может быть запись, которая говорит, что на www.example.com http - это порт 80, а также запись A, которая говорит, что адрес 127.0.0.1, также говорит, что она не очень хорошо поддерживается. Это не сказал много после этого.
Ctrl-Alt-Delor
Ответы:
185
Нет, это невозможно. Порт не является частью имени хоста, поэтому он не имеет значения в hosts-file.
Я думаю, что строка proxy_pass должна выглядеть так: proxy_pass http://127.0.0.1:8000;я получил "недопустимый префикс URL" на nginx 1.4.3.
Нобу
спасибо за этот замечательный совет! простое решение для большинства серверов.
Микроскопы
Я использую этот трюк для сопоставления портов удаленного компьютера (например, cloud.app:80, в то время как фактический порт 8080). Очень полезно для тестирования узлов слияния кластера, но для доступа к ним по одному базовому URL. Спасибо!
Габор Надь
9
У меня была в основном та же проблема, и решение с использованием этого обратного прокси-сервера действительно полезно. Хотя, я хотел немного более простое решение , поэтому я сделал этот инструмент: github.com/cristianoliveira/ergo Я надеюсь , что это поможет в так или иначе :)
Cristian Оливейра
Спасибо @CristianOliveira! Это мне очень помогло :)
127.0.0.1 api.mydomain.com
и получить к нему доступ в браузере, какapi.mydomain.com:8080
Ответы:
Нет, это невозможно. Порт не является частью имени хоста, поэтому он не имеет значения в
hosts
-file.источник
Если вам действительно нужно это сделать, используйте обратный прокси.
Например, с nginx в качестве обратного прокси
источник
proxy_pass http://127.0.0.1:8000;
я получил "недопустимый префикс URL" на nginx 1.4.3.