rankend Administrator
Uyarı Sev. : Mesaj Sayısı : 2210 Paylasım Gücü : 5979 Rep Point : 131 Kayıt tarihi : 20/10/09 Yaşım : 33 Nerden : Bodrum Ruh : Grafik Düzey : Profesyonel Tarayıcın : Chrome
| Konu: UBUNTU MODMONO & ASPX SERVER KURULUMU Paz Şub. 06, 2011 8:14 am | |
| Ubuntu mod_mono ile asp.net, server kurulum
Bu server kurulumda da sizlere linux eko sistemine ters düşse de asp.net projelerimizi linux ta yayınlamayı anlatacağım. Bildiğiniz üzere mod_mono öncesi aspx uzantılı projelerimizi linuxta yayınlayamıyorduk mod_mono bize apache web sunucumuza asp.net desteği sağlamakta; yani windows ihtiyaç duyduğumuz iss lerin linux taki karşılığı diyebiliriz.... Ben de ilk başta ön yargı ile yakalaşmıştım linux ortamında, kendi vatanından koparılmış bir proje...) ne kadar stabil çalışırki diye düşünüyordum gayet başarılı performansı tek kelime ile super diye bilirim... Denemekte yarar var... Arkadaşlar kurulumu oldukça basit yeter ki sırayı takip edelim en basit en yalın haliyle sizlerle paylaşıyorum... ve kurulumu kaynaktan derledim ki hem güncel sürümünü deneyelim ve varsa kullandığımız diger linux dagıtımlarımıza da kurabilelim.....
Kurulum genel olarak 4 aşamadan ibaret diyebiliriz 1) mono 2) xsp 3) mod_mono kurulum ve düzenlemeler... 4) apache2 düzenlemeler
Kurulum işlemi uzun süreceği icin yönetici olarak kalalım.
1) sudo -i
2) Öncelikle kurulum için bir dizin oluşturuyoruz...
# mkdir /oki # cd /oki
3) depomuzu güncelleyelim...
# apt-get update
4) Derleme sırasında ihtiyacımız olan ek paketler var misal mono2,4 derlenirken bison, gettext istemek biz ilk başta tüm hazırlığımızı yapalım....
# apt-get install build-essential pkg-config libglib2.0-dev bison libcairo2-dev libungif4-dev libjpeg62-dev libtiff4-dev gettext
5) libgdiplus indiriyoruz...
# wget [Linkleri görebilmek için üye olun veya giriş yapın.] # tar -xvf libgdiplus-2.4.tar.bz2 # cd libgdiplus-2.4/
libgdiplus kurulum için
# ./configure --prefix=/usr/local; make; make install
6) Paketlerin sistemde görünürlülüğünü sağlayalım.
# sh -c "echo /usr/local/lib >> /etc/ld.so.conf" # /sbin/ldconfig
7) oluşturduğumuz dizine dönüyoruz.
# cd /oki
Mono2.4 indiriyoruz
wget [Linkleri görebilmek için üye olun veya giriş yapın.] $ tar -xvf mono-2.4.tar.bz2 $ cd mono-2.4 $ ./configure --prefix=/usr/local; make; make install
bu komutu yazdıktan son artık geriye yaslanıp webte gezintiye çıkabiliriz hatta bir kahve molası verebilirsiniz biraz uzun sürecektir. sorun yok tabi abartmayalım.
9) Dilediğiniz metin düzenleme aracı ile /root dizini altındaki .bashrc açalım..
# gedit ~/.bashrc
açılan metin sayfasını en üstüne bu şekilde degişiklik yapmadan kopyalayalım
PATH=/usr/local/bin:$PATH LD_LIBRARY_PATH=/usr/local/lib/:$LD_LIBRARY_PATH PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:$PKG_CONFIG_PATH
10) Mono2.4 en sonunda bitti. kontrol etmek ve versiyonunu öğrenmek için konsoldan sırasıyla aşağıdaki komutları yazalım ve bi sorun yoksa.. aşağıdaki gibi bir çıktı alacaksınız...
# bash
# mono -V
root@oki-desktop:/oki/mono-2.4# mono -V Mono JIT compiler version 2.4 (tarball Prş Kas 12 18:07:53 EET 2009) Copyright (C) 2002-2008 Novell, Inc and Contributors. [Linkleri görebilmek için üye olun veya giriş yapın.] TLS: __thread GC: Included Boehm (with typed GC) SIGSEGV: altstack Notifications: epoll Architecture: x86 Disabled: none
Evet artık hayırlı olsun mono sahipsiniz, mono kurulumu bittiğine göre xsp geçelim...
XSP KURULUM
xsp indirip kurulama devam edebiyoruz... komutları sırası ile takip edelim...
1) cd /oki # wget [Linkleri görebilmek için üye olun veya giriş yapın.] # tar -xvf xsp-2.4.tar.bz2 # cd xsp-2.4/ # ./configure --prefix=/usr/local; make; make install
2) şimdi de xsp serverimizi deneyelim
# cd /usr/local/lib/xsp/test # xsp2
ve alttaki gibi bir çıktı almanız lazım
xsp2 Listening on address: 0.0.0.0 Root directory: /usr/local/lib/xsp/test Listening on port: 8080 (non-secure) Hit Return to stop the server.
Mod_mono kurulum
1) öncelikle apache2 kurulum
# apt-get install apache2 apache2-threaded-dev
2) mod_mono için devam
# cd /oki # wget [Linkleri görebilmek için üye olun veya giriş yapın.] # tar -xvf mod_mono-2.4.tar.bz2 # cd mod_mono-2.4/ # ./configure --prefix=/usr/local; make; make install
3) apache2 yapılandırma dosyasında mod_mono.conf dosya eklemek için, metin editörü ile apache2.conf dosyasını açmamız gerek
# gedit /etc/apache2/apache2.conf
açılan sayfaya ekleyelim..
Include /etc/apache2/mod_mono.conf
4) Şimdi kurulum sırasında hazır gelen test dizinini yayın yapacağımız /www dizinine taşıyalım
cp -r /usr/local/lib/xsp/test /var/www/test
5) Mod_mono için Apache2 modul dosyasını ayarlıyoruz...
gedit /etc/apache2/mods-available/mod_mono.load
LoadModule mono_module /usr/lib/apache2/modules/mod_mono.so
6) mod_mono.conf dosyası oluşturuyoruz..
gedit /etc/apache2/mods-available/mod_mono.conf
AddType application/x-asp-net .aspx .ashx .asmx .ascx .asax .config .ascx DirectoryIndex index.aspx include /usr/local/lib/mono/2.0/mono-server2-hosts.conf
7) mono-server2-hosts.conf dosyasını düzenliyoruz...
gedit /usr/local/lib/mono/2.0/mono-server2-hosts.conf
<IfModule mod_mono.c> MonoUnixSocket /tmp/.mod_mono_server2 MonoServerPath /usr/local/lib/mono/2.0/mod-mono-server2.exe AddType application/x-asp-net .aspx .ashx .asmx .ascx .asax .config .ascx MonoApplicationsConfigDir /usr/local/lib/mono/2.0 MonoPath /usr/local/lib/mono/2.0:/usr/local/lib </IfModule>
Daha önce lamp server kurulumda da bahsettiğimiz gibi localhost yazdığımızda neden itworks yazıyor kendi web sayfamızı neden görüntüleyemiyoruz sorusunun cevabı burada
Biz az önce cp komutu ile /var/www dizini altına taşıdığımız projeyi şimdi varsayılan yapacağız. localhost yazdığımızda veya dışarıdan arkadaşlarımız kendi projemize bakmak istediğinde bi sorun yaşamayacak, buraya dikkat httpd.conf ile aynı
# gedit /etc/apache2/sites-enabled/000-default <VirtualHost *> ServerName [Linkleri görebilmek için üye olun veya giriş yapın.] ServerAdmin webmaster@localhost DocumentRoot /var/www/test DirectoryIndex index.html index.aspx MonoDocumentRootDir "/var/www/test" MonoServerPath rootsite "/usr/local/bin/mod-mono-server2" MonoApplications rootsite "/:/var/www/test"
<Directory /var/www/test> MonoSetServerAlias rootsite SetHandler mono AddHandler mod_mono .aspx .ascx .asax .ashx .config .cs .asmx </Directory>
</VirtualHost> 9) şimdi apache restar
$ /etc/init.d/apache2 restart
benzer bi çıktı oluşacak
... waiting .[Thu Nov 12 18:44:27 2009] [crit] (13)Permission denied: Failed to attach to existing dashboard, and removing dashboard file '/tmp/mod_mono_dashboard_XXGLOBAL_1' failed (Operation not permitted). Further action impossible. apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ServerName
aşağıdaki gibi bi çıktı alacaksınız. herşey doğru yaptıysanız web tarayıcınıza [Linkleri görebilmek için üye olun veya giriş yapın.] yazdıktan sonra aşağıdaki gibi bir ekran görüntüsü alacaksınız
[Resimleri görebilmek için üye olun veya giriş yapın.] | |
|