05 July 2012

Install IIS 7, Deploy Project ASP .NET ke IIS 7 pada Windows 7, dan Mengatasi Bentrok dengan XAMPP



Nah kali ini aku akan menuliskan sesuatu yang berbeda. Tentang teknologi Microsoft yang sudah lama aku pelajari tapi belum lama aku share. Sebenernya uda pernah sih aku masukin tulisan ini di blog lain yaitu http://students.netindonesia.net/blogs/dzikri/archive/2011/06/09/install-iis-7-deploy-project-asp-net-ke-iis-7-pada-windows-7-dan-mengatasi-bentrok-dengan-xampp.aspx.
Tapi..aku pingin banget masukin lagi di my personal blog.hahaha
Dalam pembuatan webservice di .NET framework diperlukan beberapa langkah khusus untuk memulainya. Namun, terkadang masih banyak orang yang belum mengerti. Pada kesempatan kali ini saya akan menuliskan bagaimana cara mendeploy sebuah aplikasi ASP .NET ke IIS 7 pada Windows 7 dan juga cara mengatasi berbagai masalah yang biasa dihadapi pada saat instalasi IIS 7 dan publish project nya.

MENGAKTIFKAN IIS 7
Secara default, dalam Windows 7 sudah terdapat IIS 7. Namun masih belum diaktifkan. Ada beberapa cara mudah yang dapat dilakukan untuk mengaktifkannya, diantaranya adalah :
1. Buka Control Panel > Programs
 
2. Pada Programs and Features klik Turn Windows Features on or off
 
3. Muncul dialog box windows feature. Pilih Internet Information Service dengan mencentang bagian kirinya. Biasanya akan muncul kotak berwarna biru. Pastikan tandanya berubah menjadi centangan. Bukan kotak biru. Hal ini berarti semua yang ada di dalamnya telah tercentang.
  
5. Klik OK
6. Restart komputer Anda terlebih dahulu untuk memastikan IIS dapat berjalan.
7. Untuk mengecek apakah IIS dapat berjalan dengan baik, ketikkan http://localhost/ pada web browser Anda. Jika IIS berjalan, maka di web browser akan muncul gambar di bawah ini :
 

MENGATASI BENTROK DENGAN XAMPP
Default port yang digunakan oleh IIS 7 adalah 80, yang merupakan port yang sama yang digunakan oleh Apache XAMPP. Oleh karena itu, port XAMPP harus diubah agar tidak bentrok dengan IIS 7. Caranya adalah sebagai berikut :
1. Membuka file httd.conf pada xampp\apache\conf dengan menggunakan editor. Biasanya menggunakan Notepad++
2. Sekitar baris 45 ubahlah :
   
    menjadi :
   
3. Pada sekitar baris 181 ubahlah :
   
    menjadi :
   
4. Buka file httpd-ssl.conf pada xampp\apache\conf\extra menggunakan text editor. Biasanya menggunakan Notepad++
5. Sekitar baris 39 ubahlah :
 
    menjadi :
 
6. Sekitar baris 80 ubahlah :
 
   menjadi :
konfigurasi ini dilakukan untuk mengubah port yang ada di dalam XAMPP yaitu port 80 dan 443 diubah menjadi 8080 dan 4499 dengan tujuan agar tidak bentrok dengan IIS. Namun, pada akhirnya untuk mengakses xampp, harus menggunakan http://localhost:8080/

DEPLOY PROJECT KE IIS 7
Jika IIS 7 sudah dapat berjalan dengan baik di browser dan tidak bentrok dengan Apache XAMPP, maka project dapat di publish ke dalam IIS 7 dengan lancar. Caranya adalah sebagai berikut :
1. Pastikan Microsoft Visual Studio Anda sudah berjalan dengan hak akses Administrator. Hal ini dikarenakan IIS 7 dijalankan oleh Administrator. Sehingga sudah bisa dipastikan jika tidak berjalan dengan hak akses Administrator, maka publish project akan Failed.
2.  Klik kanan pada Project > Publish
3. Muncul dialog box untuk publish project 
4. Isikan kolom yang tersedia seperti di bawah ini lalu klik OK
 
5. Pastikan di pojok kiri bawah Visual Studio Anda bertuliskan Publish Succeeded
 
6. Membuat pool application project Anda pada IIS Manager dengan cara membuka Internet Information Service (IIS) Manager
 
7. Klik kanan pada folder tempat Anda mempublish project > Convert To Application
 
8. Muncul dialog box, lalu klik OK
 
9. Maka simbol folder tempat publish project akan berubah menjadi simbol aplikasi IIS.
 
10. Untuk mengecek apakah sudah benar, buka web browser dengan mengetikkan http://localhost/APL. Jika benar, maka akan muncul :
 

MENGATASI ERROR PADA IIS 7
Biasanya bagi yang baru pertama mendeploy project menggunakan IIS 7, akan mengalami kesalahan yang cukup banyak, beberapa di antaranya adalah akan muncul peringatan pada browser yang ada hubungannya dengan Framework dan peringatan tentang error terletak pada EventHandler. Disini akan kita bahas satu-satu bagaimana cara mengatasinya.
1. Peringatan yang muncul :
Description : An error occured during the processing of a configuration file required to service this request. Please review the specific error details below and modify your configuration file appropriately
Parser Error Message : Unrecognized attribute 'targetFramework'. Note that attribute names are case-sensitive.
Mengapa terjadi hal demikian? Ini dikarenakan IIS berjalan pada .NET Framework 2.0 sedangkan aplikasi menggunakan .NET Framework 4.0
Cara mengatasinya jangan merubah .NET 2.0 menjadi 4.0 karena akan merusak project yang akan dideploy. Caranya adalah merubah setting ASP .NET framework menjadi 4.0 di IIS Manager.
a. Buka IIS Manager
 
b. Klik View Application Pool pada bagian kanan
 
c. Double Klik pada Classic .NET AppPool dan Ubah  .NET Version nya menjadi .NET Framework 4.0
 
d. Double Klik pada Defailt AppPool dan ubah .NET Version nya menjadi .NET Framework 4.0
e. Cek kembali di browser dengan mengetikkan http://localhost/APL/. Jika sudah benar, akan muncul :

2.  Muncul peringatan :
HTTP Error 500.21 - Internal Server Error
Handler "PageHandlerFactory-Integrated" has a bad module "ManagePipelineHandler" in its module list
Mengapa hal ini bisa terjadi? Hal ini dikarenakan ada beberapa hal yang menyebabkan .NET tidak teregistrasi dengan IIS
Cara mengatasinya adalah :
a. Buka command prompt. Pastikan dibuka dengan hak akses Admninistrator. 
b. Masukkan command di bawah ini :
    32-bit :
          %windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis.exe -i
    64-bit : 
          %windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_regiis.exe -i
 
c.  Cek kembali di browser dengan mengetikkan http://localhost/APL/. Jika sudah benar, akan muncul :
 

Nah that's my description about IIS (Internet Information Services) yang tentu saja aku bikin ini ga lepas dari bantuan para blogger yang maaf aku lupa webnya yang mana dan keburu aku tutup sampai ga sempat dimasukin kesini alamatnya.hehehe
Hopefully, this article will help all of you... ^.^
Intan Web Developer

A Wife and PhD candidate to-be in National Taiwan University of Science and Technology. Dreamer, Writer, Traveller, and Tech Addict. Like to travel everywhere and experience anything.

4 comments:

  1. Lengkap banget...nice post,
    tp btw port di xampp udh aku ganti tp kok tetep akses localhost ke xampp ya? bisa kasi solusi?
    terima kasih sebelumnya

    ReplyDelete
    Replies
    1. Thank you for the comment..^.^
      coba restart dulu komputernya..dulu aku juga kayak gitu terus aku restart dan bisa.
      kalau memang tetep ga bisa, mungkin masih bentrok.

      Delete
  2. Makasih sis. lengkap banget tutorialnya :D
    Kebetulan saya juga lagi tertarik belajar ASP.NET saya juga biasa baca-baca ttg ASP.NET & asp mvc dari sini nih : http://blog.jaringanhosting.com/index.php/category/nethosting/

    ReplyDelete
  3. makasih, sangat membantu sekali bagi saya yang sedang migrasi ke ASP.net

    ReplyDelete

Anda bisa memasukkan komentar tentang postingan di sini...Terima Kasih ^.^