Исполнение ASP.NET приложений в операционной системе Linux Debian

11.11.2013

Проект Mono позволяет запускать приложения, использующие .NET Framework, на операционных системах, отличных от Windows. Рассмотрим, для примера, настройку среды исполнения в Linux Debian. Аналогичные настройки  будут применимы ко всем производным от Debian систем, например Ubuntu.

В первую очередь необходимо установить Mono, выполнив команду:

#apt-get install mono mono-gmcs mono-gac mono-utils

Если в дальнейшем планируется разработка на данном компьютере, устанавливаем визуальную среду Mono Develop:

#apt-get install monodevelop monodoc-browser monodevelop-nunit monodevelop-versioncontrol

Для выполнения веб-приложений ASP.NET, кроме всего прочего, понадобится XSP сервер:

#apt-get install mono-xsp2 mono-xsp2-base asp.net2-examples

Примеры ASP.NET 2.0 будут установлены в папку /usr/share/asp.net2-demos/. Переходим в эту папку и запускаем XSP сервер для проверки:

#xsp2

Сервер должен выдать информацию о запуске:

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

По умолчанию XSP доступен по адресу http://localhost:8080

Проверяем работоспособность XSP в браузере.

Mono XSP

Далее устанавливаем модуль для сервера Apache2 mod_mono:

#apt-get install libapache2-mod-mono

Перезапускаем Apache:

#/etc/init.d/apache2 restart

Проверяем настройки файла /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

Ниже показан примерный конфиг для виртуального хоста 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>
 

Можно скопировать в домашнюю папку виртуального хоста демонстрационные файлы FastReport.Mono из папки \Demos\C#\Web и убедиться в работоспособности установленной среды исполнения ASP.NET приложений в системе Linux Debian.

FastReport.Mono

Подробнее о настройке mod_mono можно почитать на странице проекта http://www.mono-project.com/Mod_mono

20 ноября 2024

Локализация и смена языков в FastReport VCL

FastReport VCL поддерживает 40 языков для локализации интерфейса и позволяет изменять язык на лету через меню или код, без перекомпиляции.
1 ноября 2024

Новые возможности редактора отчетов FastReport VCL

Рассматриваем новые возможности редактора отчетов: выносные линии, подсветка пересекающихся объектов, обновлённые деревья отчетов и данных.
30 октября 2024

Использование стилей при создании отчетов в FastReport VCL

В статье подробно рассматривается одна из новых возможностей FastReport VCL – применение стилей и страниц стилей.