Wie den Zugriff durch Server A auf PHP-Files, welche auf Server B liegen, gestatten?

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Wie den Zugriff durch Server A auf PHP-Files, welche auf Server B liegen, gestatten?

    Ich benutze einen Blog bei Blogspot und will die Daten von meinem Server inkludieren.

    Problem: Der Javascript-Interpreter zickt rum und verbietet mir den Zugang auf die get.php auf meinem Server.
    Habe ich mit .htaccess oder so die Möglichkeit den Zugriff von Fremd-Servern auf das PHP zu gestatten?
    CHMOD, selbst auf 777, hat nix gebracht :(

    Wie sieht das genau aus?
    Im Blogspot-Template schreibe ich meine zwei Zeilen HTML, ziehe mir ein JS von meinem Server.
    Dieses arbeitet mit einem PHP-Script, welches ebenfalls auf meinem Server liegt.
    Wie kann ich dem JS gestatten, das PHP auszulesen? Oder: Welche Möglichkeit habe ich noch, wenn in dem PHP-File eine Funktion ist, die im Intervall eine Zeile Text ausgibt, die das JS braucht?


    SERVER A: index.html

    Quellcode

    1. <script type="text/javascript" language="javascript" src="http://SERVER_B/ajax.js"></script>


    SERVER B: ajax.js

    Quellcode

    1. var http_request = false;
    2. function makeRequest(url, parameters, alertContents) {
    3. http_request = false;
    4. if (window.XMLHttpRequest) { // Mozilla, Safari,...
    5. http_request = new XMLHttpRequest();
    6. if (http_request.overrideMimeType) {
    7. http_request.overrideMimeType('text/html');
    8. }
    9. } else if (window.ActiveXObject) { // IE
    10. try {
    11. http_request = new ActiveXObject('Msxml2.XMLHTTP');
    12. } catch (e) {
    13. try {
    14. http_request = new ActiveXObject('Microsoft.XMLHTTP');
    15. } catch (e) {}
    16. }
    17. }
    18. if (!http_request) {
    19. alert('Cannot create XMLHTTP instance');
    20. return false;
    21. }
    22. http_request.onreadystatechange = alertContents;
    23. http_request.open('GET', url + parameters, true);
    24. http_request.send(null);
    25. }
    26. function tb() {
    27. if (http_request.readyState == 4) {
    28. if (http_request.status == 200) {
    29. result = http_request.responseText;
    30. document.getElementById('tb').innerHTML = result;
    31. } else {
    32. alert('There was a problem with the request.');
    33. }
    34. }
    35. }
    36. function something() {
    37. makeRequest('http://SERVER_B/get.php', '', tb);
    38. window.setTimeout('something()',864);
    39. }
    40. window.setTimeout('something()',0);
    Alles anzeigen


    SERVER B: get.php

    Quellcode

    1. <?
    2. echo $somthing;
    3. ?>


    Fehler-Meldung (IE7):
    "Zugriff verweigert"


    lg
  • Hallo,

    möchte mich jetzt nicht zu weit aus dem Fenster lehnen, aber das was Du da machen willst, denke ich, ist ein Art Cross-Site-Scripting und sollte schon aus Sicherheitsgründen nicht funktionieren.

    Ein anderer Ansatz wäre evtl. das Ganze über curl zu realisieren...

    70abc
    We raise hopes, here ... until they're old enough to fend for themselves.
    - Mike Callahan