Norbert: welcher ISP sperrt fsockopen ...

Hallo,

also Cheffe meint, dass es ISP gibt, die fsockopen(); deaktivieren.
Deshalb soll ich jetzt checken, wo fsockopen(); funktioniert.
Nun kann ich ja nicht bei allen Providern einen Account kaufen, nur um dort mal phpinfo laufen zu lassen.
Also habe ich mir etwas ausgedacht:
Wer helfen moechte, laesst diesen Code bei sich laufen und postet das Ergebnis hier.

<?php  
$sock = @fsockopen('uris.de', 80, $errnr, $errstr, 5);  
if ($sock) {  
    echo '<h1 style="color:green;">Hat funktioniert!</h1>';  
    $cl = fclose($sock);  
} else {  
    echo '<h1 style="color:red;">Kannste knicken!</h1>';  
}  
?>

Interessant sind vor allem diese ISP:
+---------------+---------------+--------------------+
| 1blu          | Internet4ever | Shells24           |
| Alfahosting   | Lycos Hosting | Shop-Hosting       |
| All-inkl      | MKQ           | Spacefree-Media    |
| Domainfactory | Net-Housting  | Strato             |
| Domaingo      | Pretago       | Tevonet            |
| Evanzo        | QuamServer    | Webgo24            |
| Fc-Hosting    | Sauer-CS      | Webspace4All       |
| Greatnet      | Server4you    | Wedosys-Webhosting |
+---------------+---------------+--------------------+

Wieso wird fsockopen(); so unbedingt benoetigt ?
Um Webservices auszufuehren, also z.B. um sich von einem
Dienstleister die Tageskurse fuer Gold oder US$ zu holen.

So, und nun bin ich mal gespannt, was dabei heraus kommt.

Gruss und Dank
Norbert

  1. Moin!

    also Cheffe meint, dass es ISP gibt, die fsockopen(); deaktivieren.
    Deshalb soll ich jetzt checken, wo fsockopen(); funktioniert.
    Nun kann ich ja nicht bei allen Providern einen Account kaufen, nur um dort mal phpinfo laufen zu lassen.

    Nein, es reicht doch, genau den ISP dazu zu befragen und sich die Funktionsfähigkeit von fsockopen schriftlich zusichern zu lassen, bei dem das Hosting stattfinden soll.

    Wer helfen moechte, laesst diesen Code bei sich laufen und postet das Ergebnis hier.

    Hälst du einen Test für nur einen einzigen der möglichen 65535 verschiedenen TCP-Ports für sinnvoll? Was ist mit dem Rest?

    Zwei Gründe können zum Scheitern führen:
    1. Die Funktion ist grundsätzlich abgeschaltet.
    2. Die Firewall des Providers erlaubt keine Verbindung zum gewünschten Ziel - aber möglicherweise zu anderen Zielen oder anderen Ports.

    Wie sinnvoll ist also dein Test wirklich?

    - Sven Rautenberg

    --
    "Love your nation - respect the others."
    1. Hai Sven,

      woher soll ich denn wissen, wo unsere Subs hosten wollen.
      Sie bekommen eine Liste mit Providern, die wir/ich gecheckt habe, und den Rest muessen sie dann schon selbst machen. Ich will nur absichern, dass auf der Liste kein ISP ist, der das gesperrt hat. Wobei ich zugeben muss, dass ich von solchem Unfug weder was gehoert noch gelesen habe.

      Natuerlich habe ich auch versucht einige Hotlines anzurufen. Aber das kannste nun wirklich vergessen. Der gemeine Hotliner kann kein PHP und ist folglich total ueberfragt. Und dann setzt der "Stille Post Effekt" ein. Ich versuche ihm was zu erklaeren, er plappert das an die Technik weiter, und von da kommt was zurueck, welches er dann mir zu erzaehlen versucht.

      "Da muessen Sie PHP selbst kompilieren."
      War doch immerhin schon mal eine sehr hilfreiche Auskunft ... ;-)

      Du musst zugeben, da ist ein Kurztest wesentlich aussagekraeftiger, auch wenn er alle Sonderfaelle unberuecksichtigt laesst.

      Gruss Norbert

      1. habe d'ehre Norbert

        woher soll ich denn wissen, wo unsere Subs hosten wollen.
        Sie bekommen eine Liste mit Providern, die wir/ich gecheckt habe, und den Rest muessen sie dann schon selbst machen.

        Was ist ein Sub?

        Das widerspricht sich jetzt aber zu Deinem ersten Posting

        <schnipp>
        Um Webservices auszufuehren, also z.B. um sich von einem
        Dienstleister die Tageskurse fuer Gold oder US$ zu holen.
        <schnapp>

        Hierfuer werden normalerweise Schnittstellen zur Verfuegung gestellt. Sonst koennte ja jeder auf die Idee kommen die u.U. teuer verifizierten Informationen abzusaugen. ;-)

        man liest sich
        Wilhelm

        1. Jo mei d' Wilhelm,

          Was ist ein Sub?

          ein Subunternehmer, Nachauftragnehmer, schlimmstenfalls Pertner.
          Nicht zu verwechseln mit einer Sub, aber das ist hier OT ... ;-)

          Hierfuer werden normalerweise Schnittstellen zur Verfuegung gestellt.

          klar,
          wieso auch nicht ...

          Sonst koennte ja jeder auf die Idee kommen die u.U. teuer verifizierten Informationen abzusaugen. ;-)

          hmm,
          fsockopen stellt, waehrend der Scriptlaufzeit, eine Verbindung zu einem Dienstanbieter her.
          Das sagt nichts ueber den Dienst, den Inhalt, das Format oder die Zugangskontrolle aus.
          So ist z.B. dies auch so ein Dienst, nur eben nicht fuer jeden.
          Dies waere ein oeffentlicher Dienst, ohne Kenntnis des Schnittstellenformates.
          Und hier mit einer Ausgabe, die jeder lesen kann.

          Gruss Norbert

      2. echo $begrüßung;

        Du musst zugeben, da ist ein Kurztest wesentlich aussagekraeftiger, auch wenn er alle Sonderfaelle unberuecksichtigt laesst.

        Nein, dieser Zwang besteht nicht, vor allem auch weil er die Sonderfälle nicht berücksichtigt. Noch nicht mal die Aufgabenstellung berücksichtigt sie. Du hast mit keinem Wort erwähnt, welche Pakete der Provider für den Test interessant sind. Du unterschlägst die Möglichkeit, dass PHP in verschiedenen Versionen installiert sein können, für die unterschiedliche Einstellungen gelten können. Du berücksichtigst nicht, dass für Kunden die einen Server gemietet haben anderen Einschränkungen als für WebHosting-Kunden gelten können. Der Test berücksichtigt weder Vergangenheit noch Zukunft. Möglicherweise hat ein Alt-Kunde schon seit je her die Funktion aktiviert bekommen und genießt nun Bestandsschutz und neuere Kunden (auf anderen Servern) haben sie nicht. Außerdem können sich die Gegebenheiten bei den Providern auch in Zukunft mal ändern.

        Ich würde lieber den Chef zu überzeugen versuchen, dass er Systemanforderungen definiert, die auch Vertragsbestandteil mit euren Kunden werden, in denen definiert ist, dass beispielsweise fsockopen() freigegeben sein muss, Zugriff zum Zielhost hastenichtgesehen über Port sowieso möglich sein muss, kein safemode aktiviert sein darf, PHP-Version X.Y vorausgesetzt wird, usw. usf. Darauf kann man sich im Zweifelsfall eher abstützen als ein irgendwann einmal von irgendwem, irgendwo vorgenommener Kurztest. (Warum gehst du eigentlich davon aus, dass jeder der dir die Kurztest-Anwort gibt die Wahrheit sagt?)

        echo "$verabschiedung $name";