Я не уверен, правильно ли я сформулировал вопрос, но в основном я хочу сделать следующее:
Когда пользователь вводит что-то вроде Расходы в строке URL-адреса браузера я хочу, чтобы браузер был направлен на определенный веб-адрес (очень похоже на то, как работают ярлыки OpenDNS)
IP-адрес веб-адреса не будет изменяться среди различных «ярлыков» ... то есть:
mycompany.com = 10.0.0.0
mycompany.com/expenses = 10.0.0.0
mycompany.com/tracker = 10.0.0.0
Когда пользователь вводит расходы в адресной строке браузера и нажмите клавишу ВВОД, я хочу, чтобы браузер автоматически направлял на указанный адрес, как указано выше.
Было бы сложно это реализовать? Надеюсь, я правильно сформулировал свой вопрос :-)
Дополнительные замечания:
Мы находимся в среде Windows
Я считаю, что сервер обмена работает как DNS-сервер в офисе
Как насчет создания DNS-записи для «cost.mycompany.com», которая отправляется на веб-сервер с правилом перенаправления Cost.mycompany.com -> mycompany.com/expenses?
Если у клиентов установлен DNS-суффикс mycompany.com, они будут преобразовывать «расходы» в cost.mycompany.com и обращаться к этому веб-серверу.
Это означает несколько дополнительных записей DNS и несколько виртуальных хостов на веб-сервере, которые ничего не делают, кроме перенаправления на «настоящие» URL-адреса?
Хотя это не совсем то, что вам нужно, почему бы не использовать сокращение URL-адресов на внутренних серверах? Затем вы можете настроить виртуальный хост на своем сервере, на котором размещен сокращатель URL-адресов, и сделать что-то вроде:
http://go/expenses
http://go/tracker
Сокращатель URL-адресов перепишет это на ваш необходимый внутренний URL-адрес. Вот пример .NET URL Shortener Вот.
Другой альтернативой является, как говорит mfarver, вам необходимо настроить запись DNS, указывающую на хост, который читает запросы заголовка хоста и соответствующим образом перенаправляет. Это нужно сделать с помощью правила перезаписи URL-адреса в IIS (или apache, если вы хотите запустить его в Windows) или какого-либо кода, который сделает всю работу за вас. Оба они, по сути, делают то же самое, что и сокращатель URL.
Определите свой домен поиска DNS для клиентов, например, company.com
Создайте cnames для расходов и т. Д., Которые указывают на веб-сервер
Публикуйте каждый целевой URL как отдельный сайт на веб-сервере (например, webserver.company.com/expenses становится cost.company.com) и используйте заголовки хоста, чтобы направлять браузеры, когда они попадают на веб-сервер (вам может потребоваться поиграть с заголовками хоста, чтобы определить, нужно ли вам добавить только расходы или cost.company.com как заголовок хоста)
Это работает ... это включает в себя немного возни и компромисса, но это работает. Мы делаем это с помощью некоторых наших внутренних сервисов. Как отмечает Бен в своем комментарии к хорошему ответу Джона Англисса, иногда вам нужно немного поработать и пойти на компромисс.
DNS ничего не знает об URL-адресах. Так что сделать это с dns невозможно. Что вы можете сделать, так это настроить прокси-сервер, который все клиенты должны использовать для доступа в Интернет, и вы можете сделать это таким образом.
Или просто установите www-прокси перед вашим веб-сервером, который передает запросы, основанные на вашем, на правильный IP-адрес.
Меня это всегда смущало. Очевидно, вам нужна комбинация DNS CNAME и Перенаправления HTTP. DNS связывает DNS-имя с IP-адресом в случае Запись. А CNAME это псевдоним для Запись. В то время как перенаправление HTTP имеет дело с URL-адресами.
Кто-то в brighthub написал как сделайте это для ярлыка URL-адреса внутренней службы поддержки.
Вкратце шаги таковы:
<meta http-equiv="Refresh" content="0;URL=http://www.mydomain.com/newpage.html"/>
Вы упоминаете, что это среда Windows, но не говорите нам, на чем размещены веб-сайты. Я тоже предполагаю Windows, но предполагаю, что 2008, как вы не утверждаете. Если у вас установлен IIS на сервере, на котором размещается «domain.com» и все подпапки, вы захотите установить модуль URL Rewrite (подробности можно найти Вот).
После установки вам нужно будет создать записи DNS для «Расходов» и «трекера». Это могут быть записи CNAME / Alias, указывающие на запись domain.com. После создания откройте командную строку на настольном компьютере и введите:
ipconfig /flushdns
ping expenses
ping domain.com
Ответ на оба запроса ping должен иметь один и тот же IP-адрес. После подтверждения работы DNS вам нужно будет перейти на веб-сервер, на котором размещен домен domain.com, и создать правило перезаписи IIS, которое выглядит примерно так:
<rule name="Canonical Host Name" stopProcessing="true">
<match url="(.*)" />
<conditions>
<add input="{HTTP_HOST}" pattern="^expenses$" />
</conditions>
<action type="Redirect" url="http://company.com/expenses" redirectType="Permanent" />
</rule>
По крайней мере, этого должно быть достаточно, чтобы вы начали. Повторите эти действия для любых других «быстрых» имен, которые вы хотите использовать.