La conf est dans le httpd. J'avais déjà rajouter le code options.
Code:
1
2
3 Options -MultiViews ProxyPass /Labview/ http://serveur-l9skch9.home:81/RS.html ProxyPassReverse /Labview/ http://serveur-l9skch9.home:81/RS.html
Version imprimable
La conf est dans le httpd. J'avais déjà rajouter le code options.
Code:
1
2
3 Options -MultiViews ProxyPass /Labview/ http://serveur-l9skch9.home:81/RS.html ProxyPassReverse /Labview/ http://serveur-l9skch9.home:81/RS.html
Il faut enlever le RS.html à la fin :
mais comme je disais, cela suppose que tu demandes http://site.ath.cx/Labview/RS.html. Si tu veux vraiment te passer du RS.html dans l'URL il faut utiliser mod_rewrite mais fais d'abord le test sans le RS.html dans les ProxyPass.Code:
1
2
3 Options -MultiViews ProxyPass /Labview/ http://serveur-l9skch9.home:81/ ProxyPassReverse /Labview/ http://serveur-l9skch9.home:81/
Bon ça va déjà un peu mieux, la page de la face-avant commence à se charger mais comme un problème n'arrive jamais seul, j'obtiens le message "Le serveur ne supporte pas les faces-avants distantes". Donc là, je pense que sa touche plus du Labview et je sais pas si tu vas pouvoir m'aider.
Effectivement, ça doit être du Labview. Vu le message, je me demande si c'est supporté d'y accéder à distance comme ça :roll:
On peut accéder au face-avant à distance avec le serveur de Labview donc là c'est peut-être apache qui n'est pas en mesure de retransmettre les données ?
Quand je vais voir dans le dossier error log d'apache, j'ai une erreur de ce type quand j'essaie d'accéder à la page rediriger "[Wed Sep 30 19:55:41 2009] [error] [client 93.0.124.30] Invalid method in request FPP /LabVIEW.FrontPanelProtocol HTTP/1.0". Le souci vient surement d'apache.
Oui : FPP est une méthode HTTP qu'Apache ne connaît pas. Il connaît GET, POST, etc. mais pas FPP d'où qu'il parte en erreur. Je ne sais pas si on peut dire à Apache qu'il connaît également cette méthode.
C'est quoi la trace correspondante dans le fichier access_log ?
La trace correspondante dans le fichier access log est :
93.0.124.30 - - [30/Sep/2009:19:55:41 +0200] "FPP /LabVIEW.FrontPanelProtocol HTTP/1.0" 501 231
http://digital.ni.com/public.nsf/all...9?OpenDocument
Citation:
Third-party web servers can host the HTML file that has the Remote Panel embedded into it, but the Remote Panel itself can only be hosted from the LabVIEW web server.
J'ai demandé de l'aide à un ingénieur via le site de NI et il ma envoyé ce lien dans la matinée mais je n'arrive pas à configurer le fichier html correctement.
La face-avant est hébergé sur le serveur Labview et j'effectue une redirection sur ce serveur donc cela doit pouvoir fonctionner ?
Non, cela revient virtuellement au même. Le souci ce sont les méthodes HTTP spécifiques qui font que justement on ne peut pas héberger (directement ou non) sur un autre serveur que celui de Labview.
Pour la conf, il ne faut pas oublier d'indiquer le port 81 (et donc aussi le vrai nom du serveur Labview), je pense : le fichier HTML est hébergé sur un autre serveur mais le paramétrage fait qu'on "tape" directement sur le serveur Labview. C'est comme ça que je comprends la chose, tout du moins.
Quand je fais les modifications la face-avant ne débute plus le téléchargement, il n'a rien d'afficher comme j'avais précédemment.
Ma conf:
Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Draft//EN"> <HTML> <HEAD> <TITLE>Contrôle à distance du VI Labview</TITLE> </HEAD> <BODY > <H1>Contrôle à distance du VI Labview</H1> <P> <TABLE BORDER = 1 BORDERCOLOR = #000000><TR><TD> <SCRIPT language="JavaScript"><!-- var lng; if (navigator.userLanguage) { lng = navigator.userLanguage; }; if (navigator.language) { lng = navigator.language.toLowerCase(); }; var obj = '<OBJECT ID="LabVIEWControl" CLASSID="CLSID:A40B0AD4-B50E-4E58-8A1D-8544233807AD" WIDTH=384 HEIGHT=525 CODEBASE="ftp://ftp.ni.com/support/labview/runtime/windows/8.0'; if (lng.indexOf("fr") != -1) { obj = obj + '/French'; } else if (lng.indexOf("de") != -1) { obj = obj + '/German'; } else if (lng.indexOf("ja") != -1) { obj = obj + '/Japanese'; } obj = obj + '/LVRunTimeEng.exe">'; document.write(obj); // --></SCRIPT> <PARAM name="LVFPPVINAME" value="RS.vi"> <PARAM name="server" value=http://serveur-l9skch9.home:81> <EMBED SRC="http://serveur-l9skch9.home:81/.LV_FrontPanelProtocol.rpvi80" LVFPPVINAME="RS.vi" REQCTRL=true TYPE="application/x-labviewrpvi80" WIDTH=384 HEIGHT=525 PLUGINSPAGE="http://digital.ni.com/express.nsf/express?openagent&code=exck2m&"></EMBED> </OBJECT> </TD></TR></TABLE> <P> </BODY> </HTML>
Possible que ça soit encore un problème de sécurité. Regarde si ton navigateur n'afficherait pas un message d'avertissement quelque part ou essaie d'ajouter site.ath.cx dans les sites de confiance.
Est-ce que serveur-l9skch9.home et site.ath.cx sont en fait la même machine ?
Je n'ai pas trouvé de message d'erreur. Je vais ajouter site.ath.cx au site de confiance. Sinon serveur-l9skch9.home (Serveur Labview) et site.ath.cx (Serveur Apache) sont sur la même machine.
Est-ce que Labview écoute sur la même interface que site.ath.cx ? Dans ce cas, essaie de mettre site.ath.cx:81.
Tu entends quoi par même interface? Si tu parle des ports, labview écoute le port 81 et site.ath.cx écoute le port 80.
Adresse IP
Les deux serveurs utilisent la même adresse ip. On peut remplacer serveur-l9skch9.home par l'adresse ip du pc (Aide de Labview)
Dans ce cas, mets site.ath.cx dans le code de la page plutôt que serveur-l9skch9.home, histoire que le code indique le même serveur que celui duquel provient la page HTML et ainsi limiter les problèmes de sécurité.