Apache && Mono

2007_03200040-resized.JPG
Автор Синицын Станиславав (С) karol(@)nptus(.)ru. Для проекта oslinux.ru GNU/Linux ХМАО-Югра
Как известно. компания Microsoft активно продвигает свою технологию .NET - (произносится дот-нэт) — программная технология, для создания как обычных программ, так и веб-приложений.

Как известно. компания Microsoft активно продвигает свою технологию .NET - (произносится дот-нэт) — программная технология, для создания как обычных программ, так и веб-приложений.

Одной из основных идей Microsoft .NET является совместимость различных служб, написанных на разных языках. Например, служба, написанная на C++ для Microsoft .NET, может обратиться к методу класса из библиотеки, написанной на Delphi; на C# можно написать класс, наследующий от класса, написанного на Visual Basic .NET, а исключение, созданное методом, написанным на C#, может быть перехвачено и обработано в Delphi. Каждая библиотека (сборка) в .NET имеет сведения о своей версии, что позволяет устранить возможные конфликты между разными версиями сборок.

В .NET заслуженно распространен язык C# (произносится си-шарп) — язык программирования, сочетающий объектно-ориентированные и аспектно-ориентированные концепции.

Как я уже отметил выше, на С# можно написать не только программу, но и веб-приложение. Для запуска такого приложения необходим веб-сервер IIS с установленным .NET Framework, но бывают случаи, когда нужно разрабатывать и внедрять веб-приложение, имея сервер GNU Linux . Что можно сделать в этой ситуации? - Программист может разрабатывать свое приложение или в M$ Windows или в GNU Linux. А сервером для запуска этого приложения может быть веб-сервер Apache.

Для написания веб-приложения в среде GNU/Linux рекомендуется установить программу monodevelop - это IDE для написания программ на языке Mono. Кстати, совсем забыл сказать, что C#, портированный на GNU Linux носит название Mono.
Mono включает компилятор языка C# — mcs, среду исполнения .NET — mono (с поддержкой JIT) и mint (без поддержки JIT), отладчик, а также ряд библиотек, включая реализацию ADO.NET и ASP.NET. В рамках проекта также разрабатываются привязки для графической системы GTK+ на платформу .NET.

итак, с местом разработчика немного разобрались. Теперь давайте посмотрим, что нужно для сервера.Предлагаемые действия я делал на машине с установленным Gentoo, но в качестве эксперта я очень не рекомендую этот дистрибутив для работы с приложениями, базирующимися на основе разработок компании Microsoft.

  • Устанавливаем Apache и Mono
  • Для веб-сервера Apache устанавливаем модуль mod_mono
  • В /etc/conf.d/apache2 добавлям '-D MONO' ( раздел APACHE2_OPTS )
  • В /etc/conf.d/mod-mono-server отмечам (Если, конечно, есть желание такое), что будет использовать технологию .NET версии 2.0 (в противном случае будет использована версия 1)

    Вот, собственно и все ;-)
    Далее можно писать веб-приложения, используя мощную технологию .NET.
    Успехов!

    _____________________________________

    Копирование материала разрешено только при наличии ссылки на источник:
    неофициальный проект GNU/Linux ХМАО-Югра www.oslinux.ru

  • 10
    в среднем: 10 (2 голосов)
    sa
    sa аватар
    User offline. Last seen 5 дней 9 часов ago. Offline
    Зарегистрирован: 05/11/2008
    Хочется примера

    Простейший пример, вроде index.php, а?

    ______________________________
    In the world without walls, who needs windows?

    Skala аватар
    User offline. Last seen 1 неделя 2 дня ago. Offline
    Зарегистрирован: 05/13/2008
    > В нашей жизни надо всякий

    > В нашей жизни надо всякий раз зарабатывать , и выполнять многие заказы )

    Вы считаете это унизительным для линуксоида? :-) Т.е.- если на linux сервер потребуется поставить поддержку NET, то Вы откажетесь, мотивируя религиозными соображениями? А за деньги? ;-)

    ____________________________________
    Linux разрабатывали для так сказать людей ©

    Skala аватар
    User offline. Last seen 1 неделя 2 дня ago. Offline
    Зарегистрирован: 05/13/2008
    Пример NET

    Если в ком-то опять проснется дар критика, то предупреждаю: написан наскоро, что бы хоть что-нить показать.
    Итак простой пример: По нажатию на кнопку выводится список альбомов из БД плеера амарок (о том, почему я его не люблю разскажу позднее):

    #cat /www/asp/pg/Default.aspx.cs
    using System;
    using System.Data;
    using System.Configuration;
    using System.Web;
    using System.Web.Security;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using System.Web.UI.WebControls.WebParts;
    using System.Web.UI.HtmlControls;
    using Npgsql;

    public partial class _Default : System.Web.UI.Page
    {
    protected void Page_Load(object sender, EventArgs e)
    {

    }
    protected void Button1_Click(object sender, EventArgs e)
    {
    NpgsqlConnection conn = new NpgsqlConnection("Server=192.168.0.1;Port=5432;User Id=amarok;Password=;Database=amarok;");
    conn.Open();
    NpgsqlCommand command = new NpgsqlCommand("select * from album order by 2", conn);
    NpgsqlDataReader dr = command.ExecuteReader();
    GridView1.DataSource=dr;
    GridView1.DataBind();
    conn.Close();
    }
    }

    Как видите по командам и именам файлов - они лежат на Linux- сервере. И там же прекрасно выполняются.
    Пы.Сы.
    Default.aspx - этот файл не получается написать,- Здесь какие-то косяки с форматированием текста выходят.
    На том файле форма, сетка GridView и кнопка :-)

    ____________________________________
    Linux разрабатывали для так сказать людей ©

    srgaz аватар
    User offline. Last seen 17 недель 1 день ago. Offline
    Зарегистрирован: 05/14/2008
    мотивируя религиозными соображениями?

    Нет, я же сказал нет.
    Мне самому Mono было интересно.
    Заказы бывают разные )

    ______________________________
    Who killed Kenny ??

    srgaz аватар
    User offline. Last seen 17 недель 1 день ago. Offline
    Зарегистрирован: 05/14/2008
    Есть выбор

    Выбора море.
    К примеру Zope,WebSphere,JBoss и тд...

    ______________________________
    Who killed Kenny ??

    Гость
    выбор ..

    Технически выбор есть. Имелось ввиду, что в коммерческих проектах часто нет возможности выбирать средства разработки.

    nnm
    User offline. Last seen 35 недель 3 дня ago. Offline
    Зарегистрирован: 05/13/2008
    Применение .NET

    >> Имелось ввиду, что в коммерческих проектах часто нет возможности выбирать
    Хотелось бы иметь несколько примеров "удачного" использования технологии .NET в коммерческих проектах, только не корпоративные сайты для двух-трех человек, а действительно успешные проекты?

    Skala аватар
    User offline. Last seen 1 неделя 2 дня ago. Offline
    Зарегистрирован: 05/13/2008
    2 nnm

    Подскажите, плиз адрес гугла- обещаюсь найти адреса NET-проектов ;-)

    ____________________________________
    Linux разрабатывали для так сказать людей ©

    srgaz аватар
    User offline. Last seen 17 недель 1 день ago. Offline
    Зарегистрирован: 05/14/2008
    Адрес

    from Skala
    google.com

    ______________________________
    Who killed Kenny ??

    Skala аватар
    User offline. Last seen 1 неделя 2 дня ago. Offline
    Зарегистрирован: 05/13/2008
    М-дя...

    Что-то я смотрю, фанатеги даже не поняли, что у меня ирония была. А может они хотят, что бы я научил их гуглем пользоваться? Тогда прошу перечислить мне 30$ за урок.
    Обзорная лекция, о том, что будет на этом уроке:

    Что значит "удачное" использование? - Просто троли при приведении аргументов тут же делают вид, что спрашивали о другом.

    Допустим, "удачное" написано в кавычках у автора просто так и он хочет узнать посещаемые коммерческие инет-сайты NET. Тогда в гугле пишем... ну примерно так (srgaz, это только пример!): как-то так . Ну или другой вариант- ссылка.

    Проводя подобные манипуляции (ну как манипуляции... в основном по клавишам жмякать) с первой попытки наткнулся на такой сайт.

    Всем троллям приятного аппетита ;-)

    ____________________________________
    Linux разрабатывали для так сказать людей ©

    nnm
    User offline. Last seen 35 недель 3 дня ago. Offline
    Зарегистрирован: 05/13/2008
    Первый исчерпывающий ответ!

    Впервые вижу полный исчерпывающий ответ, я просто счастлив! Сразу бы так...

    Расчетный счет укажи!

    srgaz аватар
    User offline. Last seen 17 недель 1 день ago. Offline
    Зарегистрирован: 05/14/2008
    Гм )

    И что? где они популярные, посещаемые ?

    ______________________________
    Who killed Kenny ??

    Skala аватар
    User offline. Last seen 1 неделя 2 дня ago. Offline
    Зарегистрирован: 05/13/2008
    Критерий?

    (Становится уже в ломы отвечать на подобную агонию, но напоследок оставлю свой неизгладимый (правда, sa?) след на этом сайте)

    Если сайты можно найти поисковиком, этот сайт не отягощает себя ненужными банерами ... Кстати, я говорю не про oslinux.ru а про те, о которых говорил выше, то в чем, о Учитель должно проявляться их популярность? Или Вы думаете по принципу: "Раз я про это не знаю, то не знает никто"?
    П.С.
    Кстати, любезнейший, Вам не кажется, что от темы немного отклонились? Может, Вы на форуме свои знания о посещаемости сайтов будете обсуждать? А то вроде как явный офтоп идет сейчас.

    ____________________________________
    Linux разрабатывали для так сказать людей ©

    srgaz аватар
    User offline. Last seen 17 недель 1 день ago. Offline
    Зарегистрирован: 05/14/2008
    Почему ?

    Вот для меня .NET не представлял интереса.

    ______________________________
    Who killed Kenny ??

    sa
    sa аватар
    User offline. Last seen 5 дней 9 часов ago. Offline
    Зарегистрирован: 05/11/2008
    Не пойму о чем разговор

    Классно, что такой тред развернули, но...

    Ребята, может поработаем?

    Skala, отличный текст, и к стати не о популярности mono

    Творческих успехов

    ______________________________
    In the world without walls, who needs windows?