Всё больше и больше можлно услышать о Mono. Как изестно, основное его идеей является реализация действительно кроссплатформенной среды .NET. Таким образом, чеще всего Mono испльзуют в операционной системе, отличной от MS Windows. А если не Windows, то Linux или какой-то из Unix. И всё было бы хорошо, если б не 2 момента (в данном случае я не акцентрирую внимание на степень готовности реализации Mono: аналог WinForms и замена Internet Information Services (IIS).На за мену WinForms приходят GTK, QTи другие библиотеки. А вот с заменой IIS все не тах хорошо: либо Apache с соответствующими модуляли, либо "родной" для Mono веб-сервер XSP2. А так как Apache наиболее популярен, то будем пользоваться им.
Все примеры я буду приводить для Ubuntu linux, но для других nix-подобных ОС все будет делаться таким же способом, за исключением установки пакетов.
Для начала нам все же надо установить Mono и IDE для нее. В качестве IDE будем использовать MonoDevelop. Устанавливаем всё необходимое:
apt-get install mono-2.0-runtime mono-2.0-gac mono-2.0-service mono-2.0-devel mono-xsp2 mono-xsp2-base
После чего можно запустить MonoDevelop, созать простое ASP.NET приложение и запустить. В результате получаем что-то похожее на это:

Теперь мы уже можем без проблем заниматься разработкой вплоть до момента, когда нужно запустить приложение на test-сервере, на которов, в качестве web-сервера, должен стоять Apache. Дело за малым - установить Apache и настроить его для работы с Mono.
Для наала, устанавливаем необходимы пакеты:
sudo apt-get install apache2 mono-apache-server2 libapache2-mod-mono
Говорим веб-серверу о необходимости загрузки нового модуля:
sudo a2enmod mod_mono
И создаём новый конфиг (/etc/mono-server2/monotest.webapp) для нашего приложения:
<apps>
<web-application>
<name>Mono test</name>
<vpath>/mono</vpath>
<path>/var/www/</path>
<vhost>localhost</vhost>
</web-application>
</apps>
Последние что нас осталось сделать - это подправить конфигурационный файл Apache'а для нашего сайта (/etc/mono-server2/mono-server2-hosts.conf). Добавляем в него такие строки:
Alias /mono "/var/www"
AddMonoApplications default "/mono:/var/www"
<Directory /var/www>
SetHandler mono
<IfModule mod_dir.c>
DirectoryIndex Default.aspx
</IfModule>
</Directory>
Перезагружаем Apache командой:
sudo /etc/init.d/apache2 restart
И смотрим в браузере что у нас получилось:
