Datei über https (!) abrufen?

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

  • Datei über https (!) abrufen?

    Hallo zusammen!

    Ich muß eine html-Datei über https (nicht http!) abrufen.
    Über fsockopen() geht es nicht, da es https nicht unterstützt.
    Die Verbindung klappt zwar, aber ein Zugriff auf die Datei ist nicht möglich.
    Mit fopen ("https://192.168.0.1/datei.html", "r") auch nicht.


    Wie kann man in PHP auf eine Datei über https zugreifen?

  • #2
    Re: Datei über https (!) abrufen?

    Original geschrieben von dashttpsproblem
    Über fsockopen() geht es nicht, da es https nicht unterstützt.
    So'n Quark.
    RTFM - in den Nutzerkommentaren im Manual steht, wie's geht.

    Sollte es damit nicht gehen - dann liegt das Problem vermutlich nicht bei PHP, sondern woanders.
    I don't believe in rebirth. Actually, I never did in my whole lives.

    Kommentar


    • #3
      Quelle: fsockopen
      If you want to connect to a SSL server by HTTPS, you have to write
      fsockopen('ssl://www.example.com', 443, $errno, $errstr, 30);
      instead of
      fsockopen('www.example.com', 443, $errno, $errstr, 30);

      If have needed days to find that out.

      Kommentar


      • #4
        Das Problem ist nicht die Verbindung, sondern der Zugriff auf die Datei über die Verbindung.

        Hier ist mal der Code, etwas unübersichtlich, aber man kann hoffentlich was daraus lesen:

        PHP-Code:
        <?php

        require ('password.txt');

        $user $username;
        $pass $password;

        $fs = new fs($user$pass);

        echo 
        'Verbindung: ';
        $error=FALSE;

        try
        {
          
        $fs->open();
          echo 
        "erfolgreich<br>\n";
          
        $fs->showresult();
          echo 
        'Benutzername: ';
          
        $fs->user($user);
          echo 
        "erfolgreich angemeldet<br>\n";
          
        //$fs->showresult();
          
        echo 'Kennwort: ';
          
        $fs->pass($pass);
          echo 
        "akzeptiert<br>\n";
          
        //$fs->showresult();
          
        echo 'html: ';
          
        $fs->data();
        }
        catch(
        Exception $ex)
        {
          
        $fs->showresult();
          
        $error TRUE;
        }

        class 
        f************ception extends Exception
        {}

        class 
        fs
        {
        public function 
        __construct($user$pass)
        {
        $this->user $user;
        $this->pass $pass;
        }

        public function 
        open()
        {
        set_time_limit(0);
        $x=10;

        $this->fs fsockopen("192.168.1.".$x443);
        if (!
        is_resource($this->fs))
        {
        throw new 
        f************ception ("[Fehler] Verbindung nicht moeglich<br>\n");
        }
        }

        public function 
        user()
        {
        fputs($this->fs"USER {$this->user}\r\n");
        }

        public function 
        pass()
        {
        fputs($this->fs"PASS {$this->pass}\r\n");
        }

        private function 
        getresult($line)
        {
        $this->strStatus substr($line01024);
        if(
        substr($this->strStatus01)!= '+')
        {
        return 
        FALSE;
        }
        else
        {
        return 
        TRUE;
        }
        }

        public function 
        showresult()
        {
        echo 
        '<code style = "color:red">';
        print_r($this->strStatus);
        echo 
        '</code><br>';
        }

        public function 
        data()
        {
          while(!
        feof($this->fs))
          {
          
        $buffer fgets($this->fs128);
          }
          return 
        $buffer;
        }
        }

        Kommentar

        Lädt...
        X