• Home
  • /
  • White Papers
  • /
  • Run of ASP.NET applications in the operating system Linux Debian

Run of ASP.NET applications in the operating system Linux Debian

Alexander Fediachov

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.

Mono XSP

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.

FastReport.Mono

You can read more information about mod_mono configuration in the home site of Mono project http://www.mono-project.com/Mod_mono

Similar articles:

back