2010-11-16 3 views
1

У меня есть SWF, который связывается со скриптом php в одном домене. В первом случае оба находятся за одним и тем же доменом и общаются без проблем. Все отлично работает.Доступ к SWF во всех доменах

Однако, когда я беру ту же разметку, которая вставляет SWF и вставляет ее на другой сайт (используя полный путь для swf как локально размещенного, так и удаленно размещенного кода), SWF больше не связывается с php-скриптом Я написал.

Я добавил файл перекрестного домена на свой сайт, который выглядит следующим образом.

<?xml version="1.0"?> 
<!DOCTYPE cross-domain-policy 
    SYSTEM "http://www.macromedia.com/xml/dtds/cross-domain-policy.dtd"> 
<cross-domain-policy> 
    <allow-access-from domain="*" /> 
</cross-domain-policy> 

Я добавил этот перекрестный файл домена как в корне моего припаркованного домена, а также к каталогу, в котором SWF в настоящее время организовано. Однако ни одна из них не устранила проблему. Может кто-нибудь сказать мне, почему мой SWF не общается с моим PHP-скриптом и как я могу заставить его работать?

ответ

1

allowScriptAccess является встроенным параметром, позволяющим SWF использовать javascript в его содержащем DOM. поэтому он не будет влиять на доступ к перекрестным доменам.

Файл crossdomain.xml должен быть всем, что вам нужно добавить к веб-сайту внешнего домена, с которым SWF пытается связаться.

Можете ли вы дважды проверить, что вы не получаете ошибку 404 или какую-либо другую проблему с HTTP при попытке вашего общения через crossdomain? любые ошибки исключаются, что может помочь вам отладить проблему.

Отправьте ссылку, если сможете.

+0

Итак, вот ссылка внешнего сайта, который не может связываться с PHP Script. http://ryan.d3-systems.com/?p=148, и вот точно такой же скрипт работает правильно, http://securedmark.com/demo.php. Вы можете видеть, что у меня есть crossdomain.xml как здесь http://ryan.d3-systems.com/crossdomain.xml, так и здесь http://d3-systems.com/crossdomain.xml. Поэтому я не могу понять, что, черт возьми, я делаю неправильно здесь, так как он отлично работает на размещенном сайте. – Ryan

+0

@ Ryan: Вы решили это – goliatone

+0

Да, это заставило меня позаботиться. Спасибо! – Ryan

0

Попробуйте добавить параметр allowScriptAccess="always" в свой тег embed и object.

+0

Не повезло, извините. После добавления AllowScriptAccess ничего не меняется. Все еще работает, когда ссылается за размещенный домен и не работает на удаленном домене – Ryan

0

Убедитесь, что ваше каноническое перенаправление не мешает сценарию. Я заметил, что вы не перенаправляете то же самое в обоих доменах, и, возможно, вы нацеливаете скрипт на действительный префикс в обоих, то есть:

Возможно, это не так. Www.d3-systems.com to d3- systems.com ...

Смежные вопросы