The Mono project allows you to run applications that use the .NET Framework in the any operating system different from Windows. Now we will launch FastReport.Mono in Linux Debian. The same settings will be applied to all derived from Debian systems, such as Ubuntu.
First, we need to install Mono:
#apt-get install mono mono-gmcs mono-gac mono-utils
If in the future we plan to develop on the computer, install the visual environment of Mono Develop:
#apt-get install monodevelop monodoc-browser monodevelop-nunit monodevelop-versioncontrol
For execute the web-applications written in ASP.NET we should install XSP server:
#apt-get install mono-xsp2 mono-xsp2-base asp.net2-examples
Some examples of ASP.NET 2.0 will installed in /usr/share/asp.net2-demos/. Go to this folder and run XSP server for testing:
#xsp2
See the output of the server:
Listening on port: 8080 (non-secure) Listening on address: 0.0.0.0 Root directory: /usr/share/asp.net2-demos Hit Return to stop the server. Application_Start
By default, XSP listen the address http://localhost:8080
Check default page of XSP in browser.
Then we need to install module for Apache2 mod_mono:
#apt-get install libapache2-mod-mono
Restart Apache
:
#/etc/init.d/apache2 restart
Check the configuration of mod_mono /etc/apache2/conf.d/mono-web.conf:
MonoAutoApplication Enabled MonoRunXSP True MonoDebug False MonoSetEnv MONO_IOMAP=all MonoMaxActiveRequests 500 MonoMaxWaitingRequests 500 MonoAutoRestartMode Requests MonoAutoRestartRequests 5000 MonoSetEnv MONO_THREADS_PER_CPU=3000
Example of virtual host configuration in
Apache2:
NameVirtualHost 192.168.1.2:80 <VirtualHost 192.168.1.2:80> ServerName mytest-server-mono.com ServerAdmin admin@mytest-server-mono.com ServerAlias www.mytest-server-mono.com 192.168.1.2:80 AddMonoApplications FrSite "/:/home/www/fr_asp_net_dir" MonoExecutablePath FrSite "/usr/bin/mono" MonoServerPath FrSite "/usr/bin/mod-mono-server2" MonoMaxMemory FrSite 300000000 MonoMaxCPUTime FrSite 3600 DocumentRoot "/home/www/fr_asp_net_dir" <Directory "/home/www/fr_asp_net_dir/"> Options Indexes FollowSymLinks MultiViews AllowOverride All Order allow,deny allow from all SetHandler mono MonoSetServerAlias FrSite DirectoryIndex Default.aspx AddHandler mono .aspx .ascx .asax .ashx .config .cs .asmx .axd </Directory> </VirtualHost>
Let's copy FastReport.Mono demos form \Demos\C#\Web to the configured home directory and check working mod_mono and ASP.NET applications in Linux Debian.
You can read more information about mod_mono configuration in the home site of Mono project http://www.mono-project.com/Mod_mono