IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Mixed content bloqué via iframe.


Sujet :

Langage PHP

  1. #1
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2011
    Messages
    273
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2011
    Messages : 273
    Points : 152
    Points
    152
    Par défaut Mixed content bloqué via iframe.
    Bonsoir,

    Je dispose d'un site chez un hébergeur payant et j'ai une page qui effectue environ 35 000 requêtes sql (via des boucles for) mais ça reçoit un timeout assez rapidement. Une fois placé sur le serveur de jeu, tout va bien même lancé 10 fois en simultané (serveur à 100€ mensuels). Pour arder le site disponible en permanence je ne souhaite pas le transférer sur le serveur de jeu. Je ne peux pas effectuer moins de requêtes car ça en effectue à peine 5-6 sauf que ça le fait pour chacun des objets disponibles en jeu.

    En faite ça effectue les requêtes sql puis affiche des trucs à partir des données du jeu. Mon idée est donc de faire bosser le serveur de jeu puis de récupérer le contenu affiché sur le site. Rassurez vous, cela ne sera pas pour les joueurs car c'est moche dans une iframe. Sauf que le site est bien sûr en https et le serveur de jeu n'a même pas de nom de domaine, j'utilise son adresse IP. J'aimerais donc savoir s'il est possible d'outre passer ce problème de mixed content bloqué et ceci automatiquement (pas seulement en autorisant dans firefox) car ça doit aussi récupérer des trucs via des tâches crons.

    Avez vous une idée ?
    Merci d'avance

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Tes explications sont assez nébuleuses.

    Tout d'abord une iframe ce n'est pas moche (si tu parles d'un point de vue esthetique). Dans le rendu final on ne devrait même pas voir que tu utilises des frames.

    Ensuite es-tu sûr de ne pas pouvoir alléger ton traitement ? Si tu as des requêtes dans des boucles imbriquées, ça donne toujours des catastrophes de performance. Il vaut mieux lire toute les données en une requête et les traiter en PHP que de faire une requête par traitement.

    Je n'ai pas compris à quoi sert le premier serveur : s'il a des capacités réduites et que tu as a côté un serveur performant pourquoi le garder ?

    Plus globalement par rapport à ta question, tu peux exécuter des traitements sur un serveur et ne récupérer que le résultat pour le présenter ailleurs.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2011
    Messages
    273
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2011
    Messages : 273
    Points : 152
    Points
    152
    Par défaut
    Bonsoir,

    Pour l'iframe j'ai éventuellement la possibilité d'autoriser le chargement de la page via mon navigateur et cela me permet de voir les données en direct. Cela ne posera de problème à personne puisque les joueurs eux voient les données générées et assemblées que je met à jour après chaque modification du coup chez eux ça charge juste du HTML stocké dans une base de données et heureusement vu le temps que ça prend à charger pour générer les données.

    En faite pour accélérer au maximum, les joueurs voient tous la même chose, c'est à dire du code html stocké dans la base de données. Et ce code html je le met à jour manuellement et c'est cette génération de données qui prend trop de temps sur le site et me met un timeout.

    J'ai également pensé à diminuer le nombre de quêtes mais là aussi ça effectue tellement de requêtes qu'il y a un timeout.

    J'ai aussi testé ça:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    $resultat = file_get_contents("http://l'ip/le nom de la page.php");
    if($resultat==false)
    	echo "false";
    else
    	echo $resultat;
    Malheureusement ça me renvoie false. Cette technique me permettrait d'afficher le code HTML sur la page hébergée sur le serveur de jeu puis de le récupérer via une page du site et de le stocker dans une base de données. Comme ça je profite de la puissance du serveur de jeu pour générer le tout et j'utilise simplement le site pour récupérer du HTML et le stocker. Je précise que via une iframe ça fonctionne si je débloque le mixed content. Donc via file_get_contents le problème est également le mixed content ?
    S'il n'y a pas de solution pour contourner ça j'ai pas encore testé en récupérant l'ensemble des données sur le serveur de jeu, en les insérant dans des tables sur le site puis en générant les données via les données stockées sur le site. Car en faite là où j'ai le time out c'est
    site => requete => serveur de jeu
    serveur de jeu => réponse => site
    et ça quelques dizaines de milliers de fois.

    Sauf que le nombre de requêtes reste le même et donc aussi timeout possible, je testerais cette solution demain si aucune astuce pour récupérer le contenu d'une page hébergée sur le serveur de jeu n'est trouvée.

    Le file get content me permettrait de récupérer des choses automatiquement via des tâches cron. Car une dernière solution serait d'afficher le code HTML sur la page hébergée sur le serveur puis de tout sélectionner, faire un copier puis l'insérer manuellement dans la base de données du site. Comme je met à jour une fois par mois ça suffit. Là où ça coince c'est les tâches crons ... Elles récupèrent d'autres choses mais ça fait aussi beaucoup de requêtes et doit être mit à jour toutes les deux heures. Et plus il y a de joueurs et de quêtes plus ça fera de requêtes et là aussi je me retrouverais bloqué assez vite. Donc ça m'arrangerait de trouver une solution dès à présent pour récupérer des données affichées sur le serveur de jeu (pas en https et n'a même pas de nom de domaine) depuis mon site en https.

  4. #4
    Membre éclairé Avatar de Geoffrey74
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2007
    Messages
    515
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2007
    Messages : 515
    Points : 760
    Points
    760
    Par défaut
    Salut,

    pour moi, la seul chose don tu profite sur ton serveur, c'est la partie SQL.
    Tu as beaucoup de solution permettant d'optimiser ton jeu, en passant par memcached, opcache, et le cache de fichier sur le ssd par exemple.

    Une connexion SQL sera toujours plus lente qu'une lecture de fichier et en plus lente encore qu'une lecture de la RAM en ce qui concerne memcache.

    Défini des actions répétitives qui retourne le même résultat, et stock les en cache, tu aura un gros gain de perf !

  5. #5
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2011
    Messages
    273
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2011
    Messages : 273
    Points : 152
    Points
    152
    Par défaut
    Bonjour,

    Merci je vais regarder de ce côté là.

Discussions similaires

  1. Transport de variable via iframe
    Par FrankH dans le forum Langage
    Réponses: 2
    Dernier message: 22/01/2014, 17h58
  2. [JAXB] Problème de mixed content avec un ComplexType à l'intérieur.
    Par esprism dans le forum Format d'échange (XML, JSON...)
    Réponses: 3
    Dernier message: 16/01/2013, 17h50
  3. appel via iframe
    Par valeri_dzia dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 30/07/2012, 11h13
  4. Tester si un port est bloqué via Dos
    Par justgreat dans le forum Sécurité
    Réponses: 10
    Dernier message: 06/04/2007, 01h41
  5. [XPATH] Formatter un mixed content dans un exp XPATH
    Par virgul dans le forum XSL/XSLT/XPATH
    Réponses: 2
    Dernier message: 02/11/2005, 13h59

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo