Какое правило перезаписи URL или подстановочного субдомена должно соблюдаться в данном случае? - PullRequest
2 голосов
/ 23 августа 2011

Я совершенно новичок в перезаписи URL-адресов и управлении субдоменами WildCard.

Мое требование заключается в том, что в моем ASP.Net 3.5 WebApp у меня есть сеточное представление, из которого свойство url для гиперссылок динамически генерирует следующий URL-адрес.

http://businessbazaar.in/BusinessBazaarAspx/Details.aspx?cid=1&name=Steel_Bird_Fabricators

Примечание: здесь _ обозначает пробел между словами.

Теперь я хочу, чтобы, когда пользователь нажимал на URL, браузер переписывал URL на

http://steelbirdfabricators.businessbazaar.in

Я хочу добиться этого с помощью некоторого dll или web.config.Я не хочу, чтобы это было в IIS как настройка. Возможно ли это?Тогда, пожалуйста, скажите мне, как?Это будет высоко оценено.

1 Ответ

2 голосов
/ 23 августа 2011

Я предполагаю, что где-то в вашем виде сетки у вас есть что-то вроде этого:

<asp:TemplateField HeaderText="Url">
  <ItemTemplate>
    <asp:HyperLink ID="HyperLink1" runat="server"
                   Text='<%# Bind("CategoryName") %>'
         NavigateUrl='http://businessbazaar.in/BusinessBazaarAspx/Details.aspx?cid=1
                      &name=<%# Eval("CategoryName") %>' ></asp:HyperLink>
  </ItemTemplate>
</asp:TemplateField>

Если бы вы изменили это на что-то вроде

<asp:TemplateField HeaderText="Url">
  <ItemTemplate>
    <asp:HyperLink ID="HyperLink1" runat="server"
                   Text='<%# Bind("CategoryName") %>'
         NavigateUrl='http://<%# Eval("CategoryName") %>.businessbazaar.in/' >
    </asp:HyperLink>
  </ItemTemplate>
</asp:TemplateField>

Тогда это решит запрошенную проблему.

Однако это не будет иметь дело с неявным вопросом - «Как мне динамически обращаться с поддоменами» - с которого, вероятно, начнется ваша боль:

Чтобы это работало в IIS, вам потребуется настроить DNS-запись с подстановочными знаками, а затем выделенный IP-адрес для сайтов в IIS, на которые можно сопоставить все эти запросы (кажется, , что IIS не не поддерживает записи заголовка хоста с подстановочными знаками ).

Затем вам нужно будет установить что-то вроде модуля IIS UrlRewrite или аналогичного для обработки запросов и определения того, что на самом деле нужно отправить в ваше приложение, чтобы получить правильную информацию обратно пользователю. .

В качестве примечания большинство SEO-специалистов рекомендуют использовать субдомены для постоянных областей вашего сайта, поскольку они имеют меньший вес, чем страницы / папки под основным доменом. Поэтому вам будет удобнее выбрать более простой вариант URL-адресов, например: http://businessbazaar.in/steel-bird-fabricators (обратите внимание также на то, что в SEO более удобное использование дефисов для разделения слов, а не подчеркивания или разбивания на мелкие элементы).

...