Основанный на учетной записи поиск в ASP.NET

Хорошо, я нашел один метод, который работает. Хотя я не знаю, лучше ли это.

После Ctrl+Shift+L у вас есть курсоры на всех строках с этой фразой. Затем нажатие Home приведет вас к началу всех из них, а затем Shift+End выделит все те строки, на которых у вас есть курсор. Затем обрежьте текст и вставьте его в любое место. Это оказалось очень полезным для меня, когда я редактировал HTML-файл с 700 ссылками.

5
задан tereško 13 July 2012 в 10:28
поделиться

4 ответа

Это работает на меня:

    //--------------------------------------------------------------------------------------------------------------------------
    public string GetSubDomain()
    {
        string SubDomain = "";

        if (Request.Url.HostNameType == UriHostNameType.Dns)
            SubDomain = Regex.Replace(Request.Url.Host, "((.*)(\\..*){2})|(.*)", "$2");
        if (SubDomain.Length == 0)
            SubDomain = "www";
        return SubDomain;
    }

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

Код выше просто удостоверяется, что это - полностью сформированный URL (скорее скажите, чем IP-адрес), и возвращает субдомен. Это работало хорошо на нас в среде довольно большого объема.

3
ответ дан 14 December 2019 в 13:50
поделиться

Путем я сделал это, с HttpContext. Запрос. ServerVariables["HTTP_HOST"].Split (". ").

Сообщите мне, нуждаетесь ли Вы в большем количестве помощи.

0
ответ дан 14 December 2019 в 13:50
поделиться

Необходимо смочь взять это от набора ServerVariables, но сначала необходимо настроить IIS и DNS для работы правильно. Таким образом, Вы знаете 37Signals, вероятно, используют Apache или другой открытый исходный код, веб-сервер Unix. На Apache это упоминается как VirtualHosting.

Чтобы сделать это с IIS, необходимо было бы создать новую запись DNS (создайте yourname.mysite.com CNAME на application.mysite.com) для каждого домена, который указывает на приложение в IIS (application.mysite.com).

Вы затем создаете запись заголовка хоста в приложении IIS (application.mysite.com), который примет заголовок yourname.mysite.com. Пользователи на самом деле поразят application.mysite, com, но адрес является пользовательским субдоменом. Вы затем получаете доступ к набору ServerVariables, чтобы заставить значение выбирать, как настроить сайт.

Примечание: существует несколько альтернативных реализаций, за которыми Вы могли следовать в зависимости от требований.

  • Обработайте обработку заголовка хоста в аппаратной подсистеме балансировки нагрузки (более вероятно 37Signals, делают это, чем полагаются на веб-сервер), и создайте пользовательский HTTP-заголовок для передачи веб-приложению.
  • Создайте новое веб-приложение и разместите заголовок для каждого отдельного приложения. Это - вероятно, неэффективная реализация для большого количества пользователей, но могло предложить лучшую изоляцию и безопасность для некоторых людей.
2
ответ дан 14 December 2019 в 13:50
поделиться

Необходимо настроить DNS для поддержки подстановочных субдоменов. Это может быть сделано путем добавления записи, указывающей IP-адрес, как это:

* A 1.2.3.4

Однажды ее сделанный, независимо от того, что Вы вводите, прежде чем Ваш домен будет отправлен в Ваш корневой домен, где можно добраться путем разделения серверной переменной HTTP_HOST, как пользователь buggs сказал выше:

 string user = HttpContext.Request.ServerVariables["HTTP_HOST"].Split(".")

//use the user variable to query the database for specific data

PS. При использовании общего хостинга, Вы, вероятно, оказываетесь перед необходимостью Уникальным дополнением IP от них, так как это обязательно для подстановочных доменов для работы. При использовании специализированного хостинга, у Вас уже есть свой собственный IP.

1
ответ дан 14 December 2019 в 13:50
поделиться
Другие вопросы по тегам:

Похожие вопросы: