Можно ли использовать CNAME (псевдоним) для - PullRequest
14 голосов
/ 09 апреля 2011

Есть ли способ, которым я могу скрыть порт от URL-адреса и использовать cname (псевдоним) вместо:1005 *http://mycname/webapps/index.jsp

Причина, по которой я говорю, заключается в том, что я могу перемещаться по полю, называемому myserver.com, чтобы сказать myserver1.com.Я не хочу, чтобы клиент всегда менял этот URL, когда я переезжаю.Вместо этого мой клиент должен не знать, где работает служба и на каком порту.

Возможно ли это?В качестве веб-сервера я использую причал.

Заранее спасибо.

Ответы [ 4 ]

9 голосов
/ 09 апреля 2011

С помощью DNS CNAME вы можете указывать только одно имя хоста на другое. Номера портов - совершенно другой кусок пирога.

Есть несколько проблем с описанной ситуацией:

  • если вы задали CNAME в DNS, вам, вероятно, придется также изменить свой веб-сервер, чтобы обработать новое имя хоста, потому что протокол HTTP работает следующим образом
  • как сказал @stevevis, вы потеряете свои куки, кеши и даже рейтинг в поисковых системах
  • Вы все равно должны включить номер порта в свои адреса: http://mycname:40080/webapps/index.jsp

Вы не упомянули, но я предполагаю, что вы не можете изменить настройки вашего веб-сервера, потому что в этом случае вы также можете изменить номер порта.

Но есть решение этой проблемы с небольшими жертвами.

Вы можете установить обратный прокси-сервер HTTP для пересылки запросов на веб-сервер (например, HAProxy , nginx и т. Д.), Но при этом вы потеряете исходных клиентов 'IP-адрес (конечно, вы можете переслать его в заголовке HTTP, но вам придется изменить код в вашем предыдущем домене, чтобы справиться с этим).

5 голосов
/ 10 ноября 2016

Попробуйте использовать запись SRV для этого. Это то, что я использовал, чтобы получить собственный домен для моего сервера Minecraft.

2 голосов
/ 09 апреля 2011

Нет. CNAME отображает только имена, а не порты. Вам нужен обратный прокси, если вы хотите отобразить x: b в c: d.

0 голосов
/ 09 апреля 2011

да и нет ... да, вы можете использовать cname взаимозаменяемо (хотя имейте в виду, что куки могут не сработать в зависимости от их домена), но если ваш сервер работает на порте, отличном от 80, выВам нужно будет включить номер порта в URL.

...