Subdomain и Uploadify, не работающий

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

.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 и флеш-файлов. Они не расположены под субдоменом, но под корневым доменом. Таким образом, я просто использую весь путь 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'
   });
1
задан mikelbring 17 May 2010 в 20:03
поделиться

2 ответа

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

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

Например, вот кроссдоменный файл twitter

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

Удачи!

2
ответ дан 3 September 2019 в 00:29
поделиться

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

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

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

0
ответ дан 3 September 2019 в 00:29
поделиться
Другие вопросы по тегам:

Похожие вопросы: