Ankündigung

Einklappen
Keine Ankündigung bisher.

[Gelöst] Aufrufen einer URL > Error 404

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • [Gelöst] Aufrufen einer URL > Error 404

    Hallöchen,

    nach dem Update auf Debian 10 habe ich folgendes Problem:

    Ich habe über ein PHP Skript einen RSS Feed (index.php?board-feed/7/&at=2-fcd7108603d1932621732fc877212bdcfa5d298b) aufgerufen - das hat vor dem Update geklappt. Jetzt aber funktioniert das nicht mehr, weil simplexml_load_file bzw. file_get_contents einen Fehler auswirft:

    PHP Warning: simplexml_load_file(index.php?board-feed/7/&at=2-fcd7108603d1932621732fc877212bdcfa5d298b): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found
    file_get_contents(index.php?board-feed/7/&at=2-fcd7108603d1932621732fc877212bdcfa5d298b): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found

    Was mir auffällt: das & (farblich markiert) wird beim Aufrufen zu & - Frage nun: wurde irgend was bei PHP bzw. Apache2 im Bezug darauf geändert bzw. angepasst?

    Ebenso funktioniert ein Cron, den ich vorher laufen hatte, nicht mehr ohne Fehlermeldung. Jedes Mal kommt curl: (16) Error in the HTTP2 framing layer.

    Hat jemand eine Idee an was es liegen kann?

    Liebe Grüße

  • #2
    Die URL ist unvollständig. Diese sollte mit http:// bzw. https:// beginnen.

    Kommentar


    • #3
      Zitat von hellbringer Beitrag anzeigen
      Die URL ist unvollständig. Diese sollte mit http:// bzw. https:// beginnen.
      Die hatte ich nur für das Forum gekürzt. Im Code selbst ist natürlich die URL vollständig.

      Kommentar


      • #4
        404 ist jedenfalls eindeutig. Die Adresse bzw. genauer gesagt den Pfad gibt es nicht.

        Das Thema ist auch nicht PHP-Fortgeschritten, sondern eher Serveradministration.

        Kommentar


        • #5
          Zitat von hellbringer Beitrag anzeigen
          404 ist jedenfalls eindeutig. Die Adresse bzw. genauer gesagt den Pfad gibt es nicht.

          Das Thema ist auch nicht PHP-Fortgeschritten, sondern eher Serveradministration.
          Ich möchte nicht unhöflich sein, aber hast du dir das auch richtig durchgelesen?

          In PHP gebe ich die korrekte URL an. Aber während die PHP Funktion die URL aufruft, wird das & in & konvertiert, obwohl ich im PHP Dokument korrekt UTF-8 eingestellt habe.

          Kommentar


          • #6
            Mit UTF-8 hat das nichts zu tun. Und es wird auch nichts wie durch Zauberei konvertiert. Dafür ist dann schon ein Code zuständig, der das macht.

            Kommentar


            • #7
              Mit was hat es denn dann zu tun?

              Mit PHP 7.0 auf Debian 9 hat es reibungslos funktioniert, warum mit PHP 7.3 auf Debian 10 nicht?

              Kommentar


              • #8
                Was willst du jetzt hören? Es ist so wie es ist. Schau dir im Code an, was passiert, wenn du den Code schon nicht herzeigen willst.

                Entweder hast du da irgendeine schwindelige Extension installiert, die da eingreift (Serveradministrationsthema) oder die Ursache liegt im PHP-Code (PHP-Thema).

                Kommentar


                • #9
                  Der Code ist ganz einfach:

                  PHP-Code:
                  header("Content-Type: text/html; charset=utf-8");

                  $xml simplexml_load_file("https://avmg.eu/forum/index.php?board-feed/7/&at=2-fcd7108603d1932621732fc877212bdcfa5d298b");
                  foreach (
                  $xml->channel->item as $item) {
                  // hier wird das XML verarbeitet

                  Den Schnipsel habe ich in eine eigene PHP Datei eingefügt. In der Haupt index.php ist der HTML Bereich entsprechend <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> angepasst.

                  Der RSS Feed ist normal aufrufbar (außer bei Firefox, der will die Datei downloaden). Nur macht PHP beim Aufrufen aus diesem besagten & ein &amp;.

                  LG

                  Kommentar


                  • #10
                    Und die Fehlermeldung steht 1:1 so im PHP-Error-Log? Und du schaust dir wirklich das Log in einem Texteditor an und nicht in einem Browser?

                    Kommentar


                    • #11
                      Zitat von hellbringer Beitrag anzeigen
                      Und die Fehlermeldung steht 1:1 so im PHP-Error-Log? Und du schaust dir wirklich das Log in einem Texteditor an und nicht in einem Browser?
                      Ja, hier der Auszug:

                      [Fri Aug 16 13:39:31.721978 2019] [proxy_fcgi:error] [pid 3934:tid 140207388542720] [client 88.198.6.115:61876] AH01071: Got error 'PHP message: PHP Warning: simplexml_load_file(https://avmg.eu/forum/index.php?boar...2bdcfa5d298b): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found\r\n in /home/users/avmg/www/avmg.eu/panel/sites/index/start/main.php on line 77\nPHP message: PHP Warning: simplexml_load_file(): I/O warning : failed to load external entity &quot;https://avmg.eu/forum/index.php?boar...fa5d298b&quot; in /home/users/avmg/www/avmg.eu/panel/sites/index/start/main.php on line 77\nPHP message: PHP Notice: Trying to get property of non-object in /home/users/avmg/www/avmg.eu/panel/sites/index/start/main.php on line 78\nPHP message: PHP Notice: Trying to get property of non-object in /home/users/avmg/www/avmg.eu/panel/sites/index/start/main.php on line 78\nPHP message: PHP Warning: Invalid argument supplied for foreach() in /home/users/avmg/www/avmg.eu/panel/sites/index/start/main.php on line 78\n', referer: https://panel.avmg.eu/project/support/tickets/

                      Kommentar


                      • #12
                        Ich finde es seltsam, dass du HTML-Entities im Error Log hast. Zum Beispiel auch bei "external entity &quot;". Wahrscheinlich kommen die &amp; auch nur im Log vor und werden gar nicht im tatsächlichen Aufruf verwendet. Also dürfte die URL auch ohne die &amp; ein 404 liefern, zumindest aus Sicht von PHP.

                        Du kannst ja mal ein
                        PHP-Code:
                        $temp file_get_contents('https://avmg.eu/forum/index.php'); 
                        ausprobieren und so schauen ob die & irgendwas mit dem Fehler zu tun haben. Wenn hier auch ein 404 kommt, dann ist die Adresse generell nicht mit PHP erreichbar.

                        Kommentar


                        • #13
                          on line 77
                          Du zeigst aber nur 4 Zeilen, das passt nicht. Da fehlen noch min. 73 Zeilen an Code.

                          Schau dir mal die main.php an wie in der Fehlerbeschreibung angegeben.

                          Kommentar


                          • #14
                            Zitat von hellbringer Beitrag anzeigen
                            Ich finde es seltsam, dass du HTML-Entities im Error Log hast. Zum Beispiel auch bei "external entity &quot;".
                            Ich sehe was du meinst. Anstatt "Inhalt" &quot;Inhalt&quot; - das wäre ja dann durch Apache2 erzeugt, oder sehe ich das falsch? Bin etwas verwirrt. Dann würde es ja nicht an PHP liegen. Bzw - ich habe den testweise den alten Interpreter aktiviert, dadurch hat sich nichts geändert.

                            Kommentar


                            • #15
                              Zitat von protestix Beitrag anzeigen
                              Du zeigst aber nur 4 Zeilen, das passt nicht. Da fehlen noch min. 73 Zeilen an Code.

                              Schau dir mal die main.php an wie in der Fehlerbeschreibung angegeben.
                              Das war der Schnipsel für die Hauptdatei. Bei meiner Testdatei ohne den anderen "Müll" sieht es genau so:

                              [Fri Aug 16 14:03:35.214095 2019] [proxy_fcgi:error] [pid 3934:tid 140207581574912] [client 88.198.6.115:62359] AH01071: Got error 'PHP message: PHP Warning: simplexml_load_file(https://avmg.eu/forum/index.php?boar...2bdcfa5d298b): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found\r\n in /home/users/avmg/www/avmg.eu/panel/test.php on line 5\nPHP message: PHP Warning: simplexml_load_file(): I/O warning : failed to load external entity &quot;https://avmg.eu/forum/index.php?boar...fa5d298b&quot; in /home/users/avmg/www/avmg.eu/panel/test.php on line 5\nPHP message: PHP Notice: Trying to get property of non-object in /home/users/avmg/www/avmg.eu/panel/test.php on line 6\nPHP message: PHP Notice: Trying to get property of non-object in /home/users/avmg/www/avmg.eu/panel/test.php on line 6\nPHP message: PHP Warning: Invalid argument supplied for foreach() in /home/users/avmg/www/avmg.eu/panel/test.php on line 6\n'

                              Kommentar

                              Lädt...
                              X