You are not logged in.
Pages: 1
Topic closed
Bonjour à tous!..
J'utilise glpi depuis peu et j'essaye de faire fonctionner le plugin d'import fabricant.
Seulement voilà, j'ai cherché de multiples solutions sur le forum ou wiki et rien n'as marché.
En mode débug, voilà le message d'erreur:
PHP ERROR: fsockopen() [function.fsockopen]: unable to connect to http://"add.ip"/proxy.php:8080 (Unable to find the socket transport "http" - did you forget to enable it when you configured PHP?) in D:\Program Files\OCS Inventory NG\xampp\htdocs\glpi\inc\common.function.php at line 1403
Je suis sur un domaine avec un proxy et authentification pour accéder à internet.
la config que j'utilise:
Apache/2.2.0 (Win32) DAV/2 mod_ssl/2.2.0 OpenSSL/0.9.8a mod_autoindex_color PHP/5.1.1 mod_perl/2.0.2 Perl/v5.8.7
Si qqun a un idée ou une soluce... ce serai magnifique!
Offline
Ben t'as installé le module socket pour php ?
Offline
Ben oui, dans le php.ini j'ai le php_sockets.dll...
Offline
fais un phpinfo(); dans une page php afin de vérifier qu'il est bien chargé
Offline
le socket support est bien en marche...
Offline
Oki, c'est déjà une bonne chose.
Ensuite, c'est quoi cette adresse ? http://"add.ip"/proxy.php:8080
ça ne serait pas plutôt http://"add.ip":8080/proxy.php
Offline
eh ben c'est ce que me renvoie le mode debug.
L'adresse proxy est rentré au niveau des recherches de mises à jour dans "config général" avec le n° de port, ou alors ce serais un fichier de config qui serais pas propre (genre php.ini) mais je ne saurais pas lequel..
merci au fait de te creuser comme ça
Offline
tu as bien mis la bonne ip, le port est bien le 8080 ? as-tu une authentification sur ton serveur proxy?
Offline
Est-ce que c'est bien dans l'onglet "configuration - générale - recherche des maj", où il faut bien configurer le proxy? si c'est bien là, tout est OK de mon coté, bon serveur, bon port et authentification ok.
Offline
ouais mais je ne suis pas sur que le plugin utilise le proxy en fait, je viens juste d'y penser.
Offline
et donc le plugin ne pourrait pas assurer la connexions aux fournisseurs chez tout ceux qui ont un proxy?
Offline
peut être que personne n'en a jamais eu besoin
Offline
Et il y aurai moyen de rentrer la config du proxy dans un fichier tel que php.ini ou un truc qui gère la connexion aux fournisseur?
Mais des gens en ont eu besoin, au vues des post que je regardai pour chercher une solution mais apparement ils ont réussi à résoudre leur problemes avec ce qu'il y a sur le wiki et les post précédents sur le sujet...
Offline
Voir wiki en bas http://glpi-project.org/wiki/doku.php?i … iertag_use
Offline
Mais je l'ai fait, je te mets les qq lignes :
$proxy_fp = fsockopen($CFG_GLPI["proxy_name"], $CFG_GLPI["proxy_port"], $errno, $errstr, 1);
if ($proxy_fp) {
fputs($proxy_fp, "GET $url HTTP/1.0\r\nHost: ".$CFG_GLPI["proxy_name"]."\r\n");
if (!empty($CFG_GLPI["proxy_user"])) {
fputs($proxy_fp, "Proxy-Authorization: Basic " . base64_encode ($CFG_GLPI["proxy_user"].":".$CFG_GLPI["proxy_password"]) . "\r\n"); // added
}
fputs($proxy_fp,"\r\n");
while(!feof($proxy_fp)) {
$contents.= fread($proxy_fp, 8192);
}
fclose($proxy_fp);
} else {
$msgerr = $LANG["setup"][311];
Si tu trouve une erreur...
Offline
il doit y avoir autre chose
Offline
voilà toute la fonction:
if (function_exists("getURLContent")) {
// Fonction getURLContent only on GLPI >= 0.71
$contents = getURLContent($url, $msgerr);
} else if (empty($CFG_GLPI["proxy_name"])){
if($fp = fopen($url,'rb')) {
while (!feof($fp)) {
$contents .= fread($fp, 8192);
}
fclose($fp);
} else {
$msgerr = $LANGSUPPLIERTAG["import"][25];
}
} else { // Connection using proxy
$proxy_fp = fsockopen($CFG_GLPI["proxy_name"], $CFG_GLPI["proxy_port"], $errno, $errstr, 1);
if ($proxy_fp) {
fputs($proxy_fp, "GET $url\n HTTP/1.0\r\nHost: ".$CFG_GLPI["proxy_name"]."\r\n");
if (!empty($CFG_GLPI["proxy_user"])) {
fputs($proxy_fp, "Proxy-Authorization: Basic " . base64_encode ($CFG_GLPI["proxy_user"].":".$CFG_GLPI["proxy_password"]) . "\r\n"); // added
}
fputs($proxy_fp,"\r\n");
while(!feof($proxy_fp)) {
$contents.= fread($proxy_fp, 8192);
}
fclose($proxy_fp);
} else {
$msgerr = $LANG["setup"][311];
Offline
Tu n'as pas corrigé correctement.
Tu es bien sur glpi version 0.71 ou 0.71.1 ?
voilà toute la fonction:
if (function_exists("getURLContent")) {
// Fonction getURLContent only on GLPI >= 0.71
$contents = getURLContent($url, $msgerr);
} else if (empty($CFG_GLPI["proxy_name"])){if($fp = fopen($url,'rb')) {
while (!feof($fp)) {
$contents .= fread($fp, 8192);
}
fclose($fp);
} else {
$msgerr = $LANGSUPPLIERTAG["import"][25];
}
} else { // Connection using proxy
$proxy_fp = fsockopen($CFG_GLPI["proxy_name"], $CFG_GLPI["proxy_port"], $errno, $errstr, 1);
if ($proxy_fp) {
fputs($proxy_fp, "GET $url HTTP/1.0\r\nHost: ".$CFG_GLPI["proxy_name"]."\r\n");
if (!empty($CFG_GLPI["proxy_user"])) {
fputs($proxy_fp, "Proxy-Authorization: Basic " . base64_encode ($CFG_GLPI["proxy_user"].":".$CFG_GLPI["proxy_password"]) . "\r\n"); // added
}
fputs($proxy_fp,"\r\n");
while(!feof($proxy_fp)) {
$contents.= fread($proxy_fp, 8192);
}
fclose($proxy_fp);
} else {
$msgerr = $LANG["setup"][311];
Offline
je suis sur glpi 0.71.1. C'est dans: fputs($proxy_fp, "GET $url\n HTTP/1.0\r\nHost: ; le \n?
j'ai enlevé et mis l'espace et...rien; Tjs pareil.. Et je sèche sur ce pb (je maitrise pas php donc...)
Si il y a un truc qui va pas dans mon code... mais maintenant je crois que tout est bien corrigé
Offline
tu as un pb de proxy avec hp ?
Xavier Caillaud
Blog GLPI Infotel
Offline
Pas de nouvelles, bonne nouvelle
Xavier Caillaud
Blog GLPI Infotel
Offline
Pages: 1
Topic closed