Настройка прокси

Прокси-страница состоит из кода серверной части, который запускается на вашем веб-сервере. Браузер посылает запрос к вашему прокси, а прокси передает запрос в сервис ArcGIS Server. ArcGIS Viewer for Silverlight содержит две прокси-страницы, которые вы можете использовать для обработки взаимодействия с сервисами ArcGIS Server, использующимися в вашем приложении.

Первая прокси-страница, BuilderProxy.ashx, разработана для использования при создании и тестировании приложений вьюера. Вторая прокси-страница, Proxy.ashx, применяется для приложений вьюера и является более защищенной, чем BuilderProxy.ashx. Загрузка данных BuilderProxy.zip или Proxy.zip.

Доступные прокси-страницы

BuilderProxy.ashx

Воспользуйтесь BuilderProxy.ashx вначале, при создании и тестировании Application Builder и разработанных приложений Viewer, т.к. она позволяет использовать токены для всех приложений веб-сервера Internet Information Services (IIS). BuilderProxy.ashx лишь посылает имя веб-сервера (http://<имя_хоста>) как указатель в запросе HTTP, что не так безопасно, как способ передачи в Proxy.ashx. Для настройки токенов измените файл BuilderProxy.config, включенный в архив BuilderProxy.zip.

При извлечении токенов из директории сервисов (например, http://<имя_сервера>/ArcGIS/tokens/gettoken.html) убедитесь в использовании http://имя_хоста в качестве HTTP-указателя. В файле BuilderProxy.config вставьте целиком токен, без начальных и конечных пробелов. Поскольку используется только имя хоста, токен и прокси-страница будут работать и в Application Builder и созданных приложениях Viewer, и в , при условии, что доступ к приложениям можно получить через имя хоста URL вместо использования локального хоста или полного доменного имени. Для установки URL убедитесь, что опция AppsBaseUrl в файле Application Builder’s web.config использует корректное имя компьютера, а не localhost.

Proxy.ashx

Используйте Proxy.ashx для приложений Viewer. Proxy.ashx переходит по указателю HTTP от приложений к серверу; поэтому Proxy.ashx является более безопасным. Обычно вам требуется одна прокси-страница для приложения при использовании токенов, поскольку токены специфичны для приложения. Для настройки токенов измените файл Proxy.config, включенный в архив Proxy.zip. При извлечении токена используйте URL к файлу Viewer.xap развернутого приложения (например, http://<имя_хоста>/Apps/MyApplication/Viewer.xap) вместо простого указания http://<имя_хоста>. Затем в тексте файла Proxy.config вставьте целиком токен без начальных и конечных пробелов.

Загрузите и настройте прокси-страницу

Приведенные ниже шаги описывают порядок загрузки и установки прокси-страницы на ваш веб-сервер. Прокси-страница запускается на вашем локальном веб-сервере, а не на сервере Esri или компьютере с ArcGIS Server (если ваш веб-сервер не содержит экземпляра ArcGIS Server).

Перед тем, как продолжить, убедитесь, что на вашем компьютере ASP.NET версии 2.0 или выше установлен и зарегистрирован в IIS. Если ASP.NET не настроен в IIS, следуйте инструкциям запущенной версии IIS в разделе ASP.NET и настройка IIS справочной системы MSDN.

  1. Загрузка данных BuilderProxy.zip или Proxy.zip, затем разархивируйте и сохраните содержимое в папку вашей корневой директории веб-сервера. В IIS местоположение корневой директории сервера по умолчанию – c:\inetpub\wwwroot. Если вы собираетесь использовать прокси для нескольких сайтов, вы можете создать папку в корневой директории, названную proxy, и разместить содержимое в ней.
  2. Откройте Менеджер IIS (IIS Manager). Статья База знаний Microsoft (Microsoft Knowledge Base) содержит инструкции по открытию менеджера IIS для разных версий IIS.
  3. Создайте Веб-приложение (Web Application) для папки proxy; эти действия зависят от используемой версии IIS.
    • Для IIS версии 5 или 6 сделайте следующее:
    1. В Веб-сайте по умолчанию (Default Web Site) щелкните правой кнопкой директорию proxy и нажмите Свойства (Properties).
    2. На закладке Директория (Directory) в Свойствах приложения (Application Settings) щелкните кнопку Создать (Create) и нажмите OK:
      Создать приложение IIS
    1. В Веб-сайте по умолчанию (Default Web Site) щелкните правой кнопкой директорию Proxy и выберите Добавить приложение (Add Application):
      Создать приложение IIS7
    2. Укажите Псевдоним (Alias) и Физический путь (Physical Path) в диалоговом окне Добавить приложение (Add Application), а затем нажмите OK:
      Добавить приложение (IIS 7)
  4. Если вы будете использовать прокси-страницу для сервисов с аутентификацией на основе токенов, получите токен для сервиса. Если ваше приложение использует несколько систем ArcGIS Server, требующих токенов, получите токен для каждого сервера. Подробнее о получении токенов см. раздел Защищенные сервисы документации ArcGIS for Silverlight. Подробнее о URL для параметра указателя HTTP см. предыдущий раздел.
  5. Откройте настройку прокси-страницы (proxy.config) в текстовом редакторе или редакторе XML.
  6. Для каждого ArcGIS Server, использующего прокси-страницу, добавьте <serverUrl> в XML-файл настройки в разделе <serverUrls>. См. примеры файлов настройки прокси. Элемент serverUrl может иметь следующие атрибуты:
    • url—URL компьютера ArcGIS Server или сервиса. Если в приложении используется несколько сервисов на одном сервере, url может указывать на корневую папку сервисов. Если в приложении используется один сервис на сервере, может устанавливаться полный URL сервиса.
    • matchAll – Указывает, следует ли использовать токен для всех запросов с этим URL. Если этот атрибут равен true, а атрибут url установлен на корневую папку сервисов, запись может использоваться для нескольких сервисов приложения.
    • token – Аутентификация токена, полученного на шаге 1. Дополнительно: используется только для сервисов, защищенных аутентификацией на основе токенов.

    Если несколько сервисов на одном сервере используются в приложении, URL может указывать на корневую папку сервиса (к примеру, http://www.example.com/arcgis/rest/services), и значение параметра matchAll равно true. Несколько записей сервера могут быть добавлены в случае, если в приложении используется несколько компьютеров ArcGIS Server.

    Атрибут mustMatch содержащегося элемента определяет, будут ли прокси только указанные сайты. Этот атрибут обычно равен true. Если он равен false, прокси-страница будет направлять любой запрос на любой сервер. Это потенциально позволит вашей прокси-странице посылать запросы сторонним серверам без вашего разрешения.

  7. Сохраните файл настройки. Запомните URL вашей прокси-страницы, который вам понадобится при добавлении защищенного картографического сервиса в ArcGIS Viewer for Silverlight .

6/8/2012