Изменить подходящий путь Windows Azure WebRole - PullRequest
0 голосов
/ 19 января 2012

Как можно изменить путь к подходу по умолчанию? Например. Я хочу запустить PHP Framework, веб-корнем которого является подпапка:

  symfony
  |_ app
  |_ bin
  |_ src
  |_ web <- Web root
      |_ index.php

Веб-корень WebRole есть:

WebRole <- Web root
 |_ bin
 |_ php
 |_ resources
 |_ WindowsAzureSDKForPHP
 |_ diagnostics.wadcfg
 |_ Global.asax
 |_ Web.config
 |_ index.php
ServiceConfiguration.cscfg
ServiceDefinition.csdef

При переносе обоих вместе я получаю:

WebRole
 |_ bin
 |_ php
 |_ resources
 |_ WindowsAzureSDKForPHP
 |_ diagnostics.wadcfg
 |_ Global.asax
 |_ Web.config
 |_ symfony
      |_ app
      |_ bin
      |_ src
      |_ web <- Desired web root
          |_ index.php      
ServiceConfiguration.cscfg
ServiceDefinition.csdef

Есть ли способ сообщить Windows Azure, что корень сети изменился? (Настройка defaultDocument в файле Web.config недостаточна).

Изменить:

После предполагаемых изменений астайков структура выглядит так:

WebRole
 |_ ServiceConfiguration.cscfg
 |_ ServiceDefinition.csdef
 |_ symfony
      |_ app
      |_ bin
      |_ src
      |_ web <- Desired web root
         |_ bin
         |_ php
         |_ resources
         |_ WindowsAzureSDKForPHP
         |_ diagnostics.wadcfg
         |_ Global.asax
         |_ Web.config
         |_ index.php      

1 Ответ

0 голосов
/ 19 января 2012

Можете ли вы попробовать добавить его в качестве другого сайта. Например, добавьте узел сайта фоллинга к элементу сайтов определения сервиса:

 <Site name="symphony" physicalDirectory="../WebRole1/symphony/web">
        <Bindings>
          <Binding name="Endpoint1" endpointName="Endpoint1" hostHeader="www.symphony.com" />
        </Bindings>
  </Site>

Вам необходимо заменить «Endpoint1» и «www.symphony.com» на фактическое имя конечной точки и заголовок хоста. Я тестировал его локально, и он работает (я тестировал с обычными html-файлами, но наличие php мало чем отличается).

UPDATE Вот развернутый образец:

http://sn.cloudapp.net/

http://symphony.staykov.net/

Обратите внимание, что symphony.staykov.net - это всего лишь CNAME для sn.cloudapp.net.

Однако при развертывании оба сайта будут находиться в каждой собственной подпапке e: \ sitesroot. Не знаю, будет ли это проблемой для вас. Как вы включаете файлы симфонии в свой веб? то есть require_once ('../ symphony /thing.php')? Это бы не сработало ...

Я отправлю образец решения для лесов и предоставлю ссылку позже сегодня или завтра.

ОБНОВЛЕНИЕ 2 - источники

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

...