Visualizzazione risultati 1 fino 3 di 3

Discussione: Problemi con fsockopen()

  1. #1
    Data registrazione
    06-08-2019
    Messaggi
    10

    Post Problemi con fsockopen()

    Salve a tutti.

    Due settimane fa avevo appurato, grazie a un altro chiarimento qui sul forum, che le connessioni CORS verso altri server web si potessero fare solo lato server e solo tramite apposite librerie (fsockopen() e cURL) per alcuni siti web.

    Ora, riprendendo dopo qualche giorno questi miei test, sto avendo particolare difficoltà con la funzione fsockopen() in uno script PHP;
    Si tratta della prima volta che tento di eseguire una connessione cross-origin (con altri piccoli siti statici di Altervista finora avevo solo fatto connessioni al massimo con i database interni da me creati), per cui era prevedibile.

    Nello specifico, la connessione viene aperta correttamente, ma dopo diventa impossibile procedere a recuperare anche solo pochi byte di informazione dallo "streaming": non solo non ottengo niente, ma addirittura il recupero (vano) delle informazioni impiega decine di secondi anche quando tento di recuperare solo qualche byte.
    Questo stesso sito web da cui vorrei ricavare il suo codice HTML, consegna senza problemi tutto il codice stesso in un attimo attraverso dei normali client per la gestione HTTP/S ed API vari, oltre ovviamente alla navigazione tramite browser che è immediata.

    Vorrei che qualche amministratore ci desse un'occhiata al mio codice (un po' disordinato a dire il vero, dopo un bel po' di prove; chiedo scusa in anticipo, forse lo modifico), per poter capire quale sia il problema.
    Avevo avuto l'idea di chiedere su StackOverflow, ma poi ho pensato che questo fosse magari un problema più legato ad Altervista e a come imposta la connessione CORS, non so.
    Tengo a precisare che ho già abilitato le connessioni senza limiti di whitelist dalle impostazioni del sito web.

    L'obiettivo è quello di ottenere il codice HTML di una qualsiasi pagina web, per cui se qualcuno sapesse una qualche via più adatta allo scopo, lo ringrazio ancor di più.

    Distinti saluti

  2. #2
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,179

    Predefinito

    Hai abilitato le connessioni server to server? (occorre attendere 30 minuti per la loro attivazione).
    È possibile comunicare con l'esterno solamente tramite le porte 80 e 443.

    Per ricavare l'HTML di un sito, puoi semplicemente anche utilizzare file_get_contents(); ad esempio:
    Codice PHP:
    <?php
    echo file_get_contents('http://google.it');
    Produce questo risultato.

    Se dovessi aver problemi con un particolare URL, potresti indicarlo?

    Ciao!
    Ultima modifica di alemoppo : 02-07-2022 alle ore 22.21.07

  3. #3
    L'avatar di dreadnaut
    dreadnaut non è connesso Super Moderatore
    Data registrazione
    22-02-2004
    Messaggi
    6,266

    Predefinito

    Citazione Originalmente inviato da costituzionalmente Visualizza messaggio
    Due settimane fa avevo appurato, grazie a un altro chiarimento qui sul forum, che le connessioni CORS verso altri server web si potessero fare solo lato server
    Nota: la questione CORS (di cui avevamo discusso in questo thread, per chi si sintonizza solo ora) era collegata al richiedere informazioni da altri siti in JavaScript, nel browser. L'intera cosa non esiste lato server!

    Come menzionato sopra da Alemoppo, puoi recuperare una pagina da un altro sito con una singola riga di PHP. Se poi vuoi elaborarne il contenuto, puoi appoggiarti a librerie come php-html-parser.
    Ultima modifica di dreadnaut : 02-07-2022 alle ore 22.50.15

Tags for this Thread

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •