Как настроить файл crossdomain.xml для сайта, URL которого является именем компьютера?

Я работаю над приложением Silverlight, размещенным на IIS 6 (Windows Server 2003), которое взаимодействует с веб-службой на сервере приложений JBoss (JBoss 4.2.2 также в Windows Server 2003). Приложение Silverlight используется только в локальной сети, поэтому оно имеет URL-адрес, например: http://machinename:88/

Я создал файл crossdomain.xml для сервера JBoss (как того требует Silverlight) в ...\server\default\deploy\jboss-web.deployer\ROOT.war со следующим текстом:

<?xml version="1.0" ?>
<cross-domain-policy>
  <site-control permitted-cross-domain-policies="master-only"/>
  <allow-access-from domain="machinename"/>
  <allow-http-request-headers-from domain="machinename" headers="*"/>
</cross-domain-policy>

Я получаю ошибки от Silverlight, пока не заменю "machinename" с "*", Я тоже пробовал "machinename:88" с теми же результатами, что и без порта. Как вы должны указать домен, когда URL-адрес - это просто имя компьютера и порт?

1 ответ

Решение

Ожидается, что домен будет полностью квалифицированным. Поскольку ваше имя машины не является полностью определенным доменным именем, оно не проходит проверку и не будет работать, если вы не используете что-то вроде machinename.local для доступа к сайту.

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

Другие вопросы по тегам