[Paraview] Paraview Web with SSL

Daniel Zuidinga info at seoaachen.de
Wed Aug 24 15:51:39 EDT 2016


I had wrong paths in my launcher.config properties.
Now the request gets through and the vtk window opens. But I have still 
the ws error. Firefox console:

Firefox can't establish a connection to the server at ws://localhost/ws. 
autobahn.min.js:114:0
null Visualizer:42:13
Use of getPreventDefault() is deprecated.  Use defaultPrevented instead. 
jquery-1.8.3.min.js:2:0
No launcher found.  Attempting to connect using the direct WS url. 
vtkweb-all.js:4456:19

--- vtk window opens, then:

Cross-Origin Request Blocked: The Same Origin Policy disallows reading 
the remote resource at http://localhost:8080/paraview. (Reason: CORS 
header 'Access-Control-Allow-Origin' missing). <unknown>
GET
http://localhost/ws [HTTP/1.1 404 Not Found 2ms]
null Visualizer:42:13
Firefox can't establish a connection to the server at ws://localhost/ws.


Am 24.08.2016 um 19:18 schrieb Sebastien Jourdain:
> Actually the hostname might be an issue if you have several network card.
> Can you try to use the computer IP? Or '0.0.0.0' for the launcher if 
> that work?
>
> Otherwise I did not spotted any issue in your config.
>
> On Wed, Aug 24, 2016 at 11:14 AM, Daniel Zuidinga <info at seoaachen.de 
> <mailto:info at seoaachen.de>> wrote:
>
>     - apache 2.4.12
>     - modules are enabled
>     - launcher.py launches without error, resrouces and apps section
>     are in the config file as described in the documentation
>     are all ports and hostnames right in my configuration files?
>     apache is localhost and paraview also
>
>
>     Am 24.08.2016 um 16:22 schrieb Sebastien Jourdain:
>>     Hi Daniel,
>>
>>     Which version of Apache are you running?
>>
>>     Did you enabled all the modules?
>>
>>     $ sudo a2enmod vhost_alias
>>     $ sudo a2enmod proxy
>>     $ sudo a2enmod proxy_http
>>     $ sudo a2enmod proxy_wstunnel
>>     $ sudo a2enmod rewrite
>>
>>     For the launcher configuration, do you have a proper
>>     "resources" and "apps" section?
>>
>>     I'm guessing you are looking at the following documentation pages?
>>
>>     -
>>     https://kitware.github.io/paraviewweb/docs/guides/apache_front_end.html
>>     <https://kitware.github.io/paraviewweb/docs/guides/apache_front_end.html>
>>     -
>>     https://kitware.github.io/paraviewweb/docs/guides/python_launcher.html
>>     <https://kitware.github.io/paraviewweb/docs/guides/python_launcher.html>
>>
>>     Once you have the forwarding of the launcher request working, the
>>     next part will be the forwarding of the ws. But we can talk about
>>     it when and if you run into issue about it.
>>
>>     Seb
>>
>>     On Wed, Aug 24, 2016 at 2:22 AM, Daniel Zuidinga
>>     <info at seoaachen.de <mailto:info at seoaachen.de>> wrote:
>>
>>         I tried to run the launcher as described in the docs. But I
>>         am still getting errors when running
>>         http://localhost/apps/Visualizer/
>>         <http://localhost/apps/Visualizer/>
>>
>>         Firefox console:
>>
>>         -------------------------------
>>
>>         1. when setting sessionManagerURL in html set to
>>         vtkWeb.properties.sessionManagerURL:
>>
>>         POST
>>         XHR
>>         http://localhost/paraview/ [HTTP/1.1 503 Service Unavailable
>>         48ms]
>>         Object { error: "The process did not properly start.…" }
>>         Visualizer:42:13
>>
>>
>>         2. when setting sessionManagerURL in html to
>>         http://localhost:8080/paraview:
>>
>>         Firefox can't establish a connection to the server at
>>         ws://localhost/ws. autobahn.min.js:114:0
>>         null Visualizer:42:13
>>         No launcher found.  Attempting to connect using the direct WS
>>         url. vtkweb-all.js:4456:19
>>         Use of getPreventDefault() is deprecated.  Use
>>         defaultPrevented instead. jquery-1.8.3.min.js:2:0
>>         Cross-Origin Request Blocked: The Same Origin Policy
>>         disallows reading the remote resource at
>>         http://localhost:8080/paraview. (Reason: CORS header
>>         'Access-Control-Allow-Origin' missing). <unknown>
>>         GET
>>         http://localhost/ws [HTTP/1.1 404 Not Found 12ms]
>>         null
>>
>>
>>         So the launcher can't start the pv webserver? But running
>>         http://localhost:8080/paraview/1
>>         <http://localhost:8080/paraview/1> in browser works but says:
>>         {"error": "No session with id: 1"}
>>
>>
>>         My apache config:
>>
>>         -----------------------------
>>
>>         <VirtualHost *:80>
>>             ServerName localhost
>>             ServerAdmin info at seoaachen.de <mailto:info at seoaachen.de>
>>             DocumentRoot
>>         /home/daniel/salome_meca/V2016/prerequisites/Paraview-v501_EDF/share/paraview-5.0/www
>>             ErrorLog "logs/pv-error_log"
>>             CustomLog "logs/pv-access_log" common
>>             ### The following commented lines could be useful when
>>         running
>>             ### over https and wss:
>>             # SSLEngine On
>>             # SSLCertificateFile /etc/apache2/ssl/your_certificate.crt
>>             # SSLCertificateKeyFile /etc/apache2/ssl/your_domain_key.key
>>             # SSLCertificateChainFile /etc/apache2/ssl/DigiCertCA.crt
>>             #
>>             # <Location ${MY-DOCUMENT-ROOT} >
>>             #   SSLRequireSSL On
>>             #   SSLVerifyClient optional
>>             #   SSLVerifyDepth 1
>>             #   SSLOptions +StdEnvVars +StrictRequire
>>             # </Location>
>>             # Have Apache pass these requests to the launcher :9000
>>             ProxyPass /paraview http://localhost:8080/paraview
>>             # Turn on the rewrite engine
>>             RewriteEngine On
>>             # This is the path the mapping file Jetty creates
>>             RewriteMap session-to-port txt:/home/daniel/proxy.txt
>>             # This is the rewrite condition. Look for anything with a
>>         sessionId= in the query part of the URL and capture the value
>>         to use below.
>>             RewriteCond %{QUERY_STRING} ^sessionId=(.*)$ [NC]
>>             # This does the rewrite using the mapping file and the
>>         sessionId
>>             RewriteRule    ^/proxy.*$ ws://${session-to-port:%1}/ws [P]
>>             <Directory
>>         "/home/daniel/salome_meca/V2016/prerequisites/Paraview-v501_EDF/share/paraview-5.0/www">
>>                 Options Indexes FollowSymLinks
>>                 Order allow,deny
>>                 Allow from all
>>                 AllowOverride None
>>                 Require all granted
>>             </Directory>
>>         </VirtualHost>
>>
>>
>>
>>         my launcher.json
>>
>>         ----------------------------
>>
>>          "configuration": {
>>                     "host" : "localhost",
>>
>>                     "port" : 8080,
>>                     "endpoint": "paraview",
>>                     "content": "/.../www",
>>                     "proxy_file" : "/home/daniel/proxy.txt",
>>                        "sessionURL":
>>         "ws://localhost/proxy?sessionId=${id}",
>>
>>                     "timeout" : 25,
>>                     "log_dir" : "/home/daniel",
>>                     "upload_dir" : "/home/daniel",
>>                     "fields" : ["file", "host", "port", "updir"]
>>                 },
>>
>>
>>         What am I doing wrong?
>>
>>
>>         Daniel Zuidinga
>>         Dipl.-Ing.
>>
>>         SEO Aachen
>>         Passstr. 5
>>         52070 Aachen
>>
>>         Tel   : 0241 / 450 912 67
>>         E-Mail:info at seoaachen.de <mailto:info at seoaachen.de>
>>         Web   :http://www.seoaachen.de  (nur zum Teil aktuell)
>>         Xing  :https://www.xing.com/profile/Daniel_Zuidinga
>>         <https://www.xing.com/profile/Daniel_Zuidinga>
>>
>>         Bald online: Software Tools für Konstrukteure und Bauteilhersteller
>>         http://www.engineeringonline.de <http://www.engineeringonline.de>
>>
>>         Am 22.08.2016 um 22:32 schrieb Sebastien Jourdain:
>>>         Hi Daniel,
>>>
>>>             I want to use paraview web with SSL. As far as I
>>>             understand I need apache as a proxy server for that? Or
>>>             is it possible with pvpython? 
>>>
>>>         It might be possible with pvpython, but I've never done it,
>>>         I've always used apache to rely on a single opened port and
>>>         handle the encryption.
>>>
>>>             I have my own launcher which opens pvpython with a
>>>             different port for each user. Is this the right way?
>>>             Will this work with ssl? 
>>>
>>>         If pvpython directly support the wss connection, you can be
>>>         good. Usually the setup, that I do is that I have Apache
>>>         serving only the port 443 (https) for both the static
>>>         content and the (wss) websocket endpoint. And I use a
>>>         mapping file between the Websocket endpoint that get
>>>         returned by my launcher and the host/port I should connect
>>>         to on the backend to establish the link between the client
>>>         and the actual ParaViewWeb server instance.
>>>         But that does not mean, that's the only way to do it and if
>>>         you don't mind having several port open, I don't see why it
>>>         could not work.
>>>
>>>             Concerning: https://kitware.github.io/visualizer/docs/
>>>             <https://kitware.github.io/visualizer/docs/> The web
>>>             visuailzer should work via npm installation? It does not
>>>             work for me:
>>>             C:\Users\danie\AppData\Roaming\npm\node_modules\pvw-visualizer\bin\pvw-visualizer-cli.js:41
>>>             var pvPythonExecs = find(paraview).filter(function(file)
>>>             { return file.match(/pvpython$/) ||
>>>             file.match(/pvpython.exe$/); });                        
>>>                        ^ TypeError: find(...).filter is not a
>>>             function     at Object.<anonymous>
>>>             (C:\Users\danie\AppData\Roaming\npm\node_modules\pvw-visualizer\bin\pvw-visualizer-cli.js:41:36)
>>>                 at Module._compile (module.js:409:26)     at
>>>             Object.Module._extensions..js (module.js:416:10)     at
>>>             Module.load (module.js:343:32)     at
>>>             Function.Module._load (module.js:300:12)     at
>>>             Function.Module.runMain (module.js:441:10)     at
>>>             startup (node.js:139:18)     at node.js:968:3 
>>>
>>>         Well, I guess I haven't tried to run the new Visualizer
>>>         server on a Windows machine.
>>>         But with ParaView 5.2 (yet to be released), we should have a
>>>         ParaViewWeb back in the binaries. So we should make sure our
>>>         Visualizer command line tool work on that platform as well.
>>>         Although, the command line is more for beginners than
>>>         anything else as it only simplify the demo usage. In real
>>>         word deployment, with a launcher, the true pvpython command
>>>         line should be used instead.
>>>         Here is an example of what you should see in a working
>>>         environment:
>>>         $ Visualizer -d ~/Downloads/
>>>         ===============================================================================
>>>         | Execute:
>>>         | $ /Applications/paraview.app/Contents/bin/pvpython
>>>         |   -dr
>>>         |
>>>         /Users/seb/Documents/code/Web2/visualizer/server/pvw-visualizer.py
>>>         |   --content
>>>         |   /Users/seb/Documents/code/Web2/visualizer/dist
>>>         |   --port
>>>         |   8080
>>>         |   --data
>>>         |   /Users/seb/Downloads/
>>>         ===============================================================================
>>>         [...]
>>>         -- Daniel Zuidinga Dipl.-Ing. SEO Aachen Passstr. 5 52070
>>>         Aachen Tel   : 0241 / 450 912 67 E-Mail: info at seoaachen.de
>>>         <mailto:info at seoaachen.de> Web   : http://www.seoaachen.de
>>>         (nur zum Teil aktuell) Xing  :
>>>         https://www.xing.com/profile/Daniel_Zuidinga
>>>         <https://www.xing.com/profile/Daniel_Zuidinga> Bald online:
>>>         Software Tools für Konstrukteure und Bauteilhersteller
>>>         http://www.engineeringonline.de
>>>         <http://www.engineeringonline.de>
>>>         _______________________________________________ Powered by
>>>         www.kitware.com <http://www.kitware.com> Visit other Kitware
>>>         open-source projects at
>>>         http://www.kitware.com/opensource/opensource.html
>>>         <http://www.kitware.com/opensource/opensource.html> Please
>>>         keep messages on-topic and check the ParaView Wiki at:
>>>         http://paraview.org/Wiki/ParaView
>>>         <http://paraview.org/Wiki/ParaView> Search the list archives
>>>         at: http://markmail.org/search/?q=ParaView
>>>         <http://markmail.org/search/?q=ParaView> Follow this link to
>>>         subscribe/unsubscribe:
>>>         http://public.kitware.com/mailman/listinfo/paraview
>>>         <http://public.kitware.com/mailman/listinfo/paraview>
>>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://public.kitware.com/pipermail/paraview/attachments/20160824/476cc643/attachment.html>


More information about the ParaView mailing list