Tutorial Menjalankan Aplikasi ASP.NET MVC 5 pada Ubuntu Linux 14.04

Tutorial Menjalankan Aplikasi ASP.NET MVC 5 pada Ubuntu Linux 14.04

ASP.NET adalah sebuah framework untuk membuat aplikasi pemrograman web sisi server. Salah satu alasan menggunakan ASP.NET adalah C#. Code C# terstruktur dengan baik sehingga mudah untuk dipahami dan dimaintenance. C# juga menyediakan beragam code hint, error hint sebelum code dijalankan.  C# dijalankan menggunakan sistem JIT, sehingga mungkin dapat berjalan lebih cepat dibanding bahasa-bahasa interpreted seperti PHP.

Sayangnya, sampai beberapa tahun yang lalu ASP.NET hanya dapat berjalan pada platform windows, hingga akhirnya ada beberapa proyek opensource seperti dotGNU dan mono. Karena ada beberapa yang masih merupakan paten Microsoft , proyek-proyek ini sulit berjalan secara maksimal dan cenderung terbatas kompabilitasnya, bahkan proyek dotGNU sampai berhenti pada tahun 2012.

Namun pada tahun 2014,  Microsoft membuat platform .NET menjadi opensource. Hal ini membuat developer mono bisa menggunakan komponen-komponen dari microsoft (sumber), menyebabkan mono berkembang dengan pesat dan bisa menjalankan framework kompleks seperti ASP.NET MVC 5.

Pada tutorial ini, akan dijelaskan bagaimana cara melakukan setup Ubuntu 14.04 LTS hingga dapat menjalankan aplikasi ASP.NET MVC 5. Selamat belajar!

Yang perlu dipersiapkan:
  1. Komputer dengan sistem operasi Ubuntu 14.04 LTS
  2. Proyek default ASP.NET MVC 5 yang telah di publish atau bisa download contoh yang saya buat disini
  3. Koneksi Internet
Tutorial:
  1. Pastikan sistem operasi anda sudah terupdate dengan menjalankan perintah berikut:
    sudo apt-get update && sudo apt-get dist-upgrade
  2. Instalasi paket apache2 dengan menjalankan perintah:
    sudo apt-get install apache2
  3. Masukan mono kedalam list paket sistem, hal ini perlu dilakukan agar versi mono yang akan di install selalu yang terbaru. pastikan anda menjalankan code di bawah baris demi baris.
    sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF
    
    sudo echo "deb http://download.mono-project.com/repo/debian wheezy main" | sudo tee /etc/apt/sources.list.d/mono-xamarin.list
    
    sudo echo "deb http://download.mono-project.com/repo/debian wheezy-apache24-compat main" | sudo tee -a /etc/apt/sources.list.d/mono-xamarin.list
    
    sudo echo "deb http://download.mono-project.com/repo/debian alpha main" | sudo tee /etc/apt/sources.list.d/mono-xamarin-alpha.list
    
    sudo apt-get update && sudo apt-get dist-upgrade
  4. Install paket mono-complete
    sudo apt-get install mono-complete
    
  5. Install paket libapache2-mod-mono
    sudo apt-get install libapache2-mod-mono
    sudo a2enmod mod_mono_auto
  6. Set apache2, agar folder pada apache2 menggunakan mono. prosedur ini harus di ulang untuk setiap aplikasi baru
    sudo nano /etc/apache2/sites-available/testasp.conf
  7. Copy-paste baris berikut ke console, sesuaikan path dan nama apabila diperlukan. klik ctrl+o , enter lalu ctrl+x untuk menyimpan file.
      Alias /testasp "/var/www/html/testasp"
      MonoServerPath inventory "/usr/bin/mod-mono-server4"
      MonoDebug inventory true
      MonoSetEnv inventory MONO_IOMAP=all
      MonoApplications inventory "/testasp:/var/www/html/testasp"
      <Location "/testasp">
        Allow from all
        Order allow,deny
        MonoSetServerAlias inventory
        SetHandler mono
        SetOutputFilter DEFLATE
        SetEnvIfNoCase Request_URI "\.(?:gif|jpe?g|png)$" no-gzip dont-vary
      </Location>
      <IfModule mod_deflate.c>
        AddOutputFilterByType DEFLATE text/html text/plain text/xml text/javascript
      </IfModule>
    

    apache2site

  8. Buat folder baru di /var/www/html/testasp , sesuaikan permission folder apabila di perlukan. File-file asp.net akan di simpan di sini.
    sudo mkdir /var/www/html/testasp
  9. Enable konfigurasi site yang dibuat
    sudo a2ensite testasp
    sudo service apache2 restart
  10. Upload atau copy file ASP.NET MVC yang ingin dijalankan atau gunakan contoh proyek yang saya berikan ke dalam folder /var/www/html/testasp
    ftp
  11. Test situs di browser,  url adalah http://127.0.0.1/testasp.  sesuaikan url dengan IP mesin anda.
    jalan

Apabila hasil seperti langkah 11, maka selamat, anda telah berhasil menjalankan ASP.NET MVC 5 pada sistem operasi linux. Apabila belum, silahkan comment dan saya akan coba menjawab pertanyaan sebisa saya.

Dengan langkah-langkah diatas, bahkan saya telah berhasil mempublish situs yang cukup kompleks dengan database mysql.

Dibawah ini adalah link-link yang bisa membantu anda belajar lebih jauh lagi.

  1. http://www.mono-project.com/docs/getting-started/install/linux/
  2. https://help.ubuntu.com/community/ModMono
  3. http://www.asp.net/mvc/overview/getting-started/introduction/getting-started
  4. http://www.w3schools.com/aspnet/mvc_intro.asp

Semoga tutorial yang saya berikan bermanfaat.