|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Nouveau Membre du Club
![]() Inscription : novembre 2006 Messages : 157 ![]() |
Bonjour,
Je dispose d'un mini-portail PHP personnel que j'ai distribué sur plusieurs serveurs. Dans le but de faciliter les mises à jour, j'ai décidé d'écrire un petit script qui va chercher les nouvelles versions des sources sur un serveur précis : ce petit script sera alors distribué avec chaque portail. Mon soucis est le suivant : je parviens à télécharger toutes sortes de fichiers depuis le serveur de mises à jour sans aucun problème (images, javascript, etc.), mais lorsqu'il s'agit de mes fichiers sources PHP de portail ca ne fonctionne pas. Les fichiers obtenus sont vides ou partiellement incomplets. Je me dois de préciser que ces fichiers PHP font des echo ou bien disposent de headers pour le téléchargement de fichiers. Voici donc comment je procède : Code :
Auriez-vous une idée de la solution ? Merci :-) |
||
|
|
00
|
|
|
#2 | ||
|
Nouveau Membre du Club
![]() Inscription : novembre 2006 Messages : 157 ![]() |
Je me suis apercus que lorsque mon serveur A essaie d'obtenir un fichier PHP de mon server B, alors seule la partie "visible" du code est transférée.
En c'est comme si le fichier source était exécuté sur le server B,et que le résultat de l'exécution était transmise au server A plutôt qu'à un navigateur client. Donc tout ce qui est ECHO est transmis, mais pas le reste de la source. Le code suivant conduit au même résultat que le code précédant : Code :
|
||
|
|
00
|
|
|
#3 | ||
|
Membre expérimenté
![]() Inscription : mai 2002 Messages : 673 ![]() |
Tu ne pourras jamais récupérer le code source en "consultant" les fichiers que le serveur Apache doit interpréter, c'est avant tout une question de sécurité (sinon, n'importe qui pourrait récupérer le code source).
Il faut nécessairement prévoir une procédure au niveau serveur, soit passer par un transfert de fichier (FTP). Une solution serait de faire sur le serveur principale une page qui lise le contenu des fichiers que tu veux récupérer, et qui te les sorte dans un fichier texte en passant via Code :
Mais si tu as de forte contrainte de sécurité, utilises FTP et de préférence en SSL.
__________________
Si vous avez un message d'erreur, n'oubliez pas de le lire, la réponse à votre problème est surement dedans ! |
||
|
|
00
|
|
|
#4 |
|
Nouveau Membre du Club
![]() Inscription : août 2007 Messages : 51 ![]() |
Est ce que sur ton serveur tu as les droits pour creer des scripts shells et mettre un script en cron?
|
|
|
00
|
|
|
#5 |
|
Nouveau Membre du Club
![]() Inscription : novembre 2006 Messages : 157 ![]() |
A vrai dire je veux pouvoir distribuer mon petit portail sur tous les serveurs PHP 3 et supérieurs, sans BDD ni aucun support complémentaire que la librairire de gestion d'images BD pour PHP. Donc je ne souhaite pas passer par du shell et du cron, d'une part parce que je ne les maitrise pas, et d'autre part parce que ca ne semble pas être disponible sur la majorité des serveurs
Par exemple moi je suis sur des serveurs Free en ce moment. Ta solution Gloubi m'intéresse fortement, je vais creuser ca, merci :-) |
|
|
00
|
|
|
#6 |
|
Nouveau Membre du Club
![]() Inscription : novembre 2006 Messages : 157 ![]() |
Ma foi la solution du header()/readfile() fonctionne correctement avec mon navigateur : ca propose de télécharger le fichier, et le fichier téléchargé est complet.
Toutefois, lorsque j'essaie d'obtenir le contenu avec mon script PHP client, rien ne semble être transmis. |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com