Difference between revisions of "RReportGenerator on the Web"
Line 27: | Line 27: | ||
=Installation= | =Installation= | ||
− | |||
− | |||
− | |||
==To run RReportGenerator on the Web you need== | ==To run RReportGenerator on the Web you need== | ||
* A http web server (we use Apache) | * A http web server (we use Apache) | ||
− | * The RReportGenerator | + | * The compiled RReportGenerator distribution rrg.tgz which contains |
− | ** the | + | ** the executable rrg.exe (=rrg.tcl + rrg_web.tcl + tcl runtime library) |
− | ** the logos RRG_logoTransparent.gif, RRG_generateReport.gif, LogoIGBMC.gif and your LocalLogo.png | + | ** the logos RRG_logoTransparent.gif, RRG_generateReport.gif, LogoIGBMC.gif '''and your LocalLogo.png''' |
+ | ** a directory containing Scenarios and Indata | ||
* Access to R, latex and pdflatex | * Access to R, latex and pdflatex | ||
** for Linux we use ''which R'' , ''which latex'' and ''which pdflatex'' | ** for Linux we use ''which R'' , ''which latex'' and ''which pdflatex'' | ||
** for Windows we search in the directory defined as the environment variable ProgramFiles | ** for Windows we search in the directory defined as the environment variable ProgramFiles | ||
− | |||
− | == | + | ==Installation on Linux== |
− | * we need a '''directory accessible''' by the web server. We call it ''rreportgenerator'' | + | * we need a '''directory accessible''' by the web server. We call it ''/var/www/rreportgenerator'' |
− | * '''rrg. | + | <source lang='bash'> |
− | * | + | #suppose www-data is the user running the web server |
+ | sudo su - www-data | ||
+ | cd /var/www | ||
+ | mv rreportgenerator rreportgenerator.OLD | ||
+ | mkdir rreportgenerator | ||
+ | wget -O rrg.tgz "http://lbgi.igbmc.fr/rreportgenerator/rrg.tgz" | ||
+ | tar -zxvf rrg.tgz | ||
+ | ls -l | ||
+ | #UNcoment following lines if your want your own Web subdirectory located somewhere else | ||
+ | #mv Web WebFromDistribution | ||
+ | #ln -s /some/where/else/MyWeb Web | ||
+ | </source> | ||
+ | |||
+ | * '''rrg.exe''', index.html and the logos (with your LocalLogo.png) have to be in that directory (if not in the same directory you can use unix links to simulate it) | ||
+ | * the '''sub directory called Web''' contains the scenarios, input and ouput files for all projects. (use links if they are elsewhere) | ||
We can now use the url http://''http_server''/''rreportgenerator''/rrg.tcl | We can now use the url http://''http_server''/''rreportgenerator''/rrg.tcl | ||
− | * To allow the execution of the . | + | * To allow the execution of the rrg.exe as cgi-bin you need following line in the apache configuration file |
− | ScriptAliasMatch ^/''rreportgenerator''/rrg. | + | ScriptAliasMatch ^/''rreportgenerator''/rrg.exe /real/path/to/the/directory/''rreportgenerator''/rrg.exe |
− | * | + | * to allow the url http://''http_server''/''rreportgenerator'' |
** do it in the apache configuration or ... | ** do it in the apache configuration or ... | ||
− | ** | + | ** use the file index.html in ''rreportgenerator'' with the redirection to rrg.exe |
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> | ||
<html> | <html> | ||
<head> | <head> | ||
− | <meta http-equiv="REFRESH" content="0;url=./rrg. | + | <meta http-equiv="REFRESH" content="0;url=./rrg.exe?commande=WebForm"> |
</head> | </head> | ||
</html> | </html> |
Revision as of 10:22, 18 November 2010
While the original RReportGenerator is/was designed as stand-alone, now we've developed a version that is available through a web interface. This should allow users to benefit of servers that are much more powerful, in particular if the applications are memory consuming.
http://lbgi.igbmc.fr/rreportgenerator
Contents
How it works
The main tcl program rrg.tcl (mostly code by Luc Moulinier) remains nearly unchanged. We replaced the call to 'main' with following lines :
global env
if {! [info exists env(QUERY_STRING)] && $argv=={}} {
package require Tk
main
} else {
source "[file dirname [info script]]/rrg_web.tcl"
MainWeb
}
- (We should find a better way to test if it concerns http ...)
- If launched as local program, rrg.tcl requires the package Tk and runs normally
- If launched by the web server, rrg.tcl sources the additional file rrg_web.tcl (code written by Raymond Ripp) and sends a html page to the web browser.
- Any action from the user through his web browser will rerun rrg.tcl, the arguments are always transfered within the web page and users queries, avoiding use of session variables.
- The user can switch between existing projects (if he knows the password) or create a new project.
- Within a project he can select, delete or create scenarios and input files.
- After selection of a scenario and input file the user can run RReportGenarator. This lauches the normal rrg.tcl from Luc and stores the result in the OutputDir of the project.
- These output files can be shown, downloaded and deleted by any user knowing the password of the project.
Installation
To run RReportGenerator on the Web you need
- A http web server (we use Apache)
- The compiled RReportGenerator distribution rrg.tgz which contains
- the executable rrg.exe (=rrg.tcl + rrg_web.tcl + tcl runtime library)
- the logos RRG_logoTransparent.gif, RRG_generateReport.gif, LogoIGBMC.gif and your LocalLogo.png
- a directory containing Scenarios and Indata
- Access to R, latex and pdflatex
- for Linux we use which R , which latex and which pdflatex
- for Windows we search in the directory defined as the environment variable ProgramFiles
Installation on Linux
- we need a directory accessible by the web server. We call it /var/www/rreportgenerator
#suppose www-data is the user running the web server
sudo su - www-data
cd /var/www
mv rreportgenerator rreportgenerator.OLD
mkdir rreportgenerator
wget -O rrg.tgz "http://lbgi.igbmc.fr/rreportgenerator/rrg.tgz"
tar -zxvf rrg.tgz
ls -l
#UNcoment following lines if your want your own Web subdirectory located somewhere else
#mv Web WebFromDistribution
#ln -s /some/where/else/MyWeb Web
- rrg.exe, index.html and the logos (with your LocalLogo.png) have to be in that directory (if not in the same directory you can use unix links to simulate it)
- the sub directory called Web contains the scenarios, input and ouput files for all projects. (use links if they are elsewhere)
We can now use the url http://http_server/rreportgenerator/rrg.tcl
- To allow the execution of the rrg.exe as cgi-bin you need following line in the apache configuration file
ScriptAliasMatch ^/rreportgenerator/rrg.exe /real/path/to/the/directory/rreportgenerator/rrg.exe
- to allow the url http://http_server/rreportgenerator
- do it in the apache configuration or ...
- use the file index.html in rreportgenerator with the redirection to rrg.exe
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html> <head> <meta http-equiv="REFRESH" content="0;url=./rrg.exe?commande=WebForm"> </head> </html>