crossdomain.xml

Discussion in 'PHP' started by Apeckou, 4 Feb 2012.

  1. Apeckou

    Apeckou Elder - Старейшина

    Joined:
    23 Jan 2007
    Messages:
    143
    Likes Received:
    11
    Reputations:
    0
    Здравствуйте, у меня вопрос по сабжу.

    Мне нужно следующее.

    У меня есть сайт на главном сервере мойсайт.ру
    Есть еще несколько серверов, у которых адреса s1.мойсайт.ру, s2.мойсайт.ру, s3.мойсайт.ру

    Возможно ли как-то подружить их между собой (чтобы они могли обмениваться яваскриптом через аякс/ифреймы) учитывая что собственно все серверы и домены - мои?

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

    UPD. бле..почитал еще..он только для флеша чтоли? а как мне тогда подружить ифреймы?(
     
    #1 Apeckou, 4 Feb 2012
    Last edited: 4 Feb 2012
  2. Mr.Snuffer

    Mr.Snuffer Member

    Joined:
    2 Jul 2010
    Messages:
    140
    Likes Received:
    13
    Reputations:
    0
    crossdomain.xml - это для флешек.
    А для всего остального, по крайней мере js и iframe есть хедер X-Allow-Foreign-Hosts
    Который надо пихать тогда, когда запрос действительно оттуда, откуда надо.
     
  3. M_script

    M_script Members of Antichat

    Joined:
    4 Nov 2004
    Messages:
    2,582
    Likes Received:
    1,310
    Reputations:
    1,557
    Не нужен.

    http://site1.mydomain.com/test1.html
    PHP:
    <script>
    document.domain 'mydomain.com';
    function 
    testFunc()
    {
       
    alert(document.frames[0].document.body.innerHTML);
    }
    </script>
    <iframe onload="testFunc()" src="http://mydomain.com/main.html">
    http://mydomain.com/main.html
    PHP:
    <script>
    document.domain document.domain;
    </script>
    hello world
     
  4. Mr.Snuffer

    Mr.Snuffer Member

    Joined:
    2 Jul 2010
    Messages:
    140
    Likes Received:
    13
    Reputations:
    0
    M_script, эта штука покатит только если файлы на одном адресе.
    В случае тс - адреса разные
     
  5. barnaki

    barnaki Elder - Старейшина

    Joined:
    2 Nov 2008
    Messages:
    676
    Likes Received:
    130
    Reputations:
    4
    у apache server alias надо прописать чтобы аякс запросы работали
     
  6. Apeckou

    Apeckou Elder - Старейшина

    Joined:
    23 Jan 2007
    Messages:
    143
    Likes Received:
    11
    Reputations:
    0
    окей-окей, ща все посмотрю. пишите если что-то есть еще по теме плЗ
    про алиас подробнее можно? А то я их впервые вижу вообще...ну да, ламо я, знаю)

    UPD: ёперный театр, кажется фишка с document.domain работает. ща затестю в разных браузерах
     
    #6 Apeckou, 4 Feb 2012
    Last edited: 4 Feb 2012
  7. M_script

    M_script Members of Antichat

    Joined:
    4 Nov 2004
    Messages:
    2,582
    Likes Received:
    1,310
    Reputations:
    1,557
    Нет. Если совпадает свойство document.domain.
    Это свойство можно менять на текущий домен и наддомены. Причем, присвоение значения document.domain должно быть прописано в коде страницы, даже если страница находится на нужном домене.

    UPD:
    Можешь не тратить время. Вариант кроссбраузерный. Единственное ограничение - после смены document.domain на наддомен некоторые версии IE не дадут сменить его обратно на текущий домен (до перезагрузки страницы, разумеется)
     
    #7 M_script, 4 Feb 2012
    Last edited: 4 Feb 2012
  8. scanislav

    scanislav Elder - Старейшина

    Joined:
    25 Jun 2010
    Messages:
    87
    Likes Received:
    22
    Reputations:
    31
    Другой вариант - пользоваться JSONP