Субдомен и Uploadify не работают - PullRequest
1 голос
/ 18 мая 2010

У меня есть поддомены с подстановочными символами, например:

.example.com переходит на example.com/app/

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

RewriteCond %{HTTP_HOST} ^(.*).example.com
RewriteCond %{HTTP_HOST} !^www.example.com [NC]
RewriteRule ^(.*)$ http://example.com/app/%1/$1 [P]

Я также использую полный путь для вызова файлов js и flash. Они расположены не под поддоменом, а под корневым доменом. Поэтому я просто использую полный путь URL, вот пример моего js:

$("#fileInput").uploadify({
      'uploader'       : 'http://example.com/js/upload/_scripts/uploadify.swf',
      'script'         : 'http://sub.example.com/discuss/upload/do_upload/' + session_id,
      'cancelImg'      : 'http://example.com/images/icons/del.png',
      'folder'         : '/files/',
      'multi'          : true,
                'auto' : true,
                'queueSizeLimit' : 10,
                'buttonImg' : 'http://example.com/images/attachafile2.jpg',
                'width' : 91,
                'height' : 23,
                'wmode' : 'transparent'
   });

Ответы [ 2 ]

2 голосов
/ 18 мая 2010

uploadify использует flash для загрузки.Flash подчиняется той же политике происхождения, как и собственный браузер, за исключением того, что у него есть лазейка.

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

Например, вот файл междоменного домена Twitter

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

Удачи!

0 голосов
/ 18 мая 2010

На основании записи в Википедии для той же политики происхождения звучит так, будто это не будет работать, поскольку sub.domain.com! = Domain.com в отношении JavaScript. При этом, это также звучит как , что, пока JavaScript считает , что запрашивает тот же домен, все должно быть просто замечательно.

Я думаю , если вы скажете Uploadify для публикации на исходный не переписанный путь и разрешите Apache обрабатывать перезапись автоматически, тогда JavaScript не будет думать, что это нарушает политика происхождения.

Например: Если вы переназначили domain.com/path/to/foo на foo.domain.com, а затем в своем запросе JavaScript /path/to/foo, Apache соответствующим образом переведет запрос, и JavaScript не узнает разницу.

...