Makalemizde Windows Sunucu rolü olan iis üzerinden çoklu web sitesi yayımlama özelliğini ele alıyor olacağız. Windows Server 2003’ün artık kullanılmadığını düşünürsek, makalemizdeki adımları aynı şekilde Windows Server 2008, 2012 ve 2016 üzerinde aynı metot ile uygulayabiliriz.
Günümüzde Windows ve Linux sistemler üzerinde çalışan çok farklı sistemler olup bu işlemler farklı yazılımlar ve platformlar ile yapılabilir durumda. Biz hali hazırda çoklu site yayımlama işlemlerini sahip olunan Windows Server üzerindeki IIS rolü ile yapıyor olacağız. Bu bize ücretsiz olan rolü kullanırken mevcut sistemimizde fazla ayar yapmadan yapılandırmayı tamamlama imkânı sunacak.
Ortamımıza kısaca bakacak olursak ortamımda Windows Server 2016 ve üzerinde Active Directory yapısı kurulu durumda.
Ortama göz attıktan sonra platform olarak IIS yapısını kullanacağımız için işlemlerimize IIS rolünü kurarak başlayalım. Server Manager üzerinde aşağıdaki iki alandan bir tanesini kullanarak rol ekleme adımlarına başlayabiliriz.
Açılan ekranda sihirbaz ile yapabileceklerimiz noktasında bilgi verilmektedir. Next ile bir sonraki ekranımıza ilerleyelim.
Açılan ekranımızda iki seçeneğimiz yer almaktadır. Bunlardan birincisi olan;
Role-based or feature-based insallation : Rol ve Özellik bazında ekleme kurulum yapma imkânı verir. Windows Server 2016 içerisinde sahip olduğumuz sürüme göre, içerisinde bulunan ve ihtiyacımız olan rol ve özellikleri buradan ekleyip kaldırabilmekteyiz.
Remote Desktop Services installation: Eski zamanlarda Terminal Servis olarak anılan ve şimdi RDS (Remote Desktop Services) uzak masaüstü yapılandırmasını hızlı ve standart olarak buradan yapabilmekteyiz.
Bu nedenle biz IIS rolünü kuracak olduğumuz için Role-based or feature-based insallation seçimini yaparak Next ile ilerliyoruz.
Windows Server 2008 ve 2012 ile birlikte sunucu kümesi oluşturarak bu küme üzerine toplu olarak ve farklı bir sunucu üzerinden Rol ve Özellik ekleme ve kaldırma işlemleri yapabilir duruma geldik. Tabi bu işlem Windows Server 2012 üzerinden doğrudan yapılabilirken Windows Server 2008’e bazı özellikler katmamız gerekiyordu. Bizim ortamımızda tek bir sunucumuz olduğundan ve bu sunucumuza IIS rolünü kuracak olduğumuzdan Adı, ip adresi ve versiyon bilgisi sunulan sunucumuzu seçerek Next ile ilerliyoruz.
Karşımıza gelen ekrandan kuracak olduğumuz Web Server (IIS) rolünü seçiyoruz.
IIS rolünü kurmak istediğimizde bu rolün kurulabilmesi için farklı özelliklerin ve bileşenlerin gerekli olduğunu gösteren bir ekran karşımızda belirliyor. Rol kurulumu için gerekli olan bu bileşenlerinde yüklenmesi için Add Features butonuna tıklayalım.
Şimdi kurulacak olan rolümüz seçili hale geldi. Bir sonraki adıma ilerleyebiliriz. Şimdi Next butonuna tıklayarak bir sonraki adıma ilerleyelim.
Bir sonraki ekranımızda özellik ekleme ekranımız bizi karşılamakta. Bir özellik ekleme istediğimiz durumda bu ekranı kullanmalıyız. Biz bu ekranda bir özellik eklemeyeceğimiz için Next ile ilerleyebiliriz.
Bu ekranımızda kurulacak olan IIS versiyonu ile ilgili olarak bilgiler sunulmakta. Bir bakıma sihirbaz görevi gören bu ekranımızı Next ile geçelim.
IIS rolü üzerinde çok sayıda bileşen ve ayar olmasından dolayı karşımıza özelleştirmeler yapabilmemiz için bir ekran geldi. Biz aşağıdaki ayarlar ile ilerliyor olacağız. Örnek olarak HTTP Redirection gibi yönlendirme işlemi yapacaksanız buradan bu özelliği aktif etmeniz gerekmektedir. Bir varsayılan ayarları kullanacağımız için bu adımı Next ile geçelim.
Restart the destination server automatically if requred seçimini yaparak rollerin kurulumu sonrası yeniden başlatma gerekmesi durumunda bu işlemin otomatik olarak gerçekleşmesini sağlayalım.
Karışımıza gelen sorun ekranında YES butonuna tıklayalım ve yeniden başlama işlemine onay verdiğimizi belirtmiş olalım.
Bu ekranımızda Install butonumuza tıklayarak kurulum işlemimizi başlatalım.
Rolümüz kurulmaya başladı.
Kurulum işlemimiz tamamladı. Close kurulum adımımızı tamamlayalım.
Başlat menümüz üzerinde kurulum sonrası IIS konsoluna erişim sağlayan konsol kısa yolu yerini almış durumda. Konsolumuzu açalım.
Varsayılan bir site oluşmuş durumda.
http://localhost http://ipadresi veya http://sunucuismi şeklinde varsayılan IIS sitesine erişim sağlayabiliriz. Aşağıdaki ekran geldiğine göre kurulum sorunsuz tamamlanmış ve servisler ayakta demektir.
Şimdi sıra IIS üzerinde çoklu site yayımlamak için yapılandırma aşamasında. Bu aşamaya geçmeden önce bu işlemi nasıl yapacağımız konusunda biraz bilgi vereyim. Bu işlemi yapacağımız metot Host Header.
Host Header : Çözümpark Sözlük üzerinde durum şöyle anlatılmakta. IIS üzerinde bir ip adresi için birden çok web sitesi barındırmak istiyorsanız eğer host header kullanmanız gerekmektedir. Bunun temel sebebi bu Web server ip adresi için gelen bir paket içerisinde source ip , destination ip , source port ve destination port bulunur ki hedef ip ile hedef port bellidir ( ip olarak web server’ ın ip adresi , port olarak ise varsayılan olarak 80 nolu port kullanılır ). Sorun ise şudur, eğer siz bu web server üzerinde birden çok web sitesi oluşturursanız böyle bir isteği hangi web sitesi için geldiğini anlayamazsınız, bu nedenle insanlar ip üzerinden değil de URL ile yani web sitelerinin adresi ile size gelirler, sizde IIS üzerinde her bir web sitesi için sen www.hakanuzuner.com’ sun, sen www.cozumpark.com’ sun gibi bir tanımlama yaparız.
Şimdi adımlarımıza geçelim. Öncelikle oluşturulan siteler için dns üzerinde gerekli kayıtları açmamız gerekmekte. Şu an aşağıdaki resimde Active Directory kurulumu sırasında gelen kayıtlar gelmekte.
Oluşturulacak olan siteler için yeni DNS zone tanımlamaları yapılmalı. Bu nedenle DNS üzerinde sağ tıklayarak New Zone… kısmına tıklayalım.
Açılan ekranda sihirbazı geçmek için Next butonuna tıklayalım.
Biz yeni ve ayrı bir zone tanımlayacağımız için Primary Zone seçimi yaparak Next ile bir sonraki adıma ilerleyelim.
Bizim ortamımızda tek bir dns sunucumuz olduğu için To all DNS server running on on domain controllers in tihs domain : cozumpark.lokal seçimini yaparak Next ile bir sonraki adıma ilerleyelim.
Oluşturulacak olan dns zone için bilgileri girelim. Biz IIS üzerinde rizasahan.com isimli bir site barındıracağımız için zone bilgisi olarak rizasahan.com olarak tanımlamamızı yapıp bir sonraki adıma Next ile ilerliyoruz.
Aşağıdaki seçimi değiştirmeden Next ile son adıma ilerleyelim.
Şu ana kadar olan işlemlerin bir özeti bizi karşıladı. Tanımlama işlemini tamamlamak için Finish butonuna tıklayarak bu adımı da bitirelim.
Örneğimizi iki site ile yapacağımız için yeni bir zone tanımlama işlemini yukarıdaki adımlar ile yapalım. Ben cozumpark.com için bir tanımlama işlemi daha yapıyorum ve tamamlıyorum.
Evet dns tanımlama işlemleri şu anda aşağıdaki gibi tamam durumda. Şimdi Zone tanımlarının içine ilgili tanımları yapma zamanı geldi.
Öncelikle cozumpark.com zonu üzerinde sağ tıklayarak New Host (A or AAAA)… kısmına tıklayalım. Bu kayıtlar ne işe yarar noktasında ise aşağıdaki bilgilerden yararlanabilirsiniz. Bu kayıtlar genel kayıtlar olup bu kayıtlar haricinde birçok kayıt türü daha bulunmaktadır.
MX Kaydı;
MX kayıtları, alan adınıza gelen e-posta iletilerinin hangi sunucuya yönlendirileceğinin bilgisini içerir. Server alanında belirtebileceğiniz örnek veriler mail.alanadiniz.com ya da aspmx.L.google.com gibi e-posta sunucularının adresleridir. Priority olarak adlandırılan değer iletilerin hangi öncelik sırasında belirtilen sunuculara yönlendirileceğini belirleyen değerdir. Alan adınız için birden fazla MX kaydı tanımlayabilirsiniz. Bu durumda iletileriniz öncelikli olarak en düşük Priority değerine sahip sunucuya, bu sunucudan cevap alınılmazsa sıralamadaki diğer sunuculara yönlendirilir.
A Kaydı;
Adres (A) kaydı, host adını bir IP adresine yönlendirir. Örneğin, www.cozumpark.com adresinin direkt olarak sizin ana bilgisayarınıza (ip adresi 192.168.1.1 olsun) yönlendirilmesini istiyorsanız, şunun gibi bir kayıt girmeniz gerekir:
cozumpark.com. A 192.168.1.1
En çok kullanılan kayıt türü diyebiliriz. Alan adınıza bağlı bir alt alan adının hangi IP adresine yönlendirileceği bilgisini içerir. Örnek olarak alan adınıza bağlı “www” alt alan adının, web sitenizin barındırıldığı sunucu IP adresine yönlendirilmesinde kullanılır.
CNAME Kaydı;
CNAME, bir bilgisayarın, bir veya daha fazla host adı tarafından bilinmesini sağlar. Öncelikli olarak bir A kaydı mutlaka olmalıdır ki bu resmi bir isim olmalı. Örneğin:
cozumpark.com.com. A 192.168.1.1
CNAME’i kullanarak, diğer host adlarını bir resmi (A kaydı) adrese yönlendirebilirsiniz. Örneğin:
ftp.cozumpark.com. CNAME cozumpark.com.
mail.cozumpark.com. CNAME cozumpark.com.
ssh.cozumpark.com. CNAME cozumpark.com.
CNAME kayıtları, domaininizi ftp.cozumpark.com, mail.cozumpark.com vb. vasıtasıyla görüntülemenize yardımcı olur. Uygun bir CNAME kaydınız yoksa bu tip adresleri kullanarak, sunucunuza bağlanamazsınız.
TXT Kayıtları;
Bu tip kayıtlar özel amaçlı kayıtlardır. Genellikle spam e-posta gönderimleri engellemek için düşünülmüş kurallardan biri olan “SPF” kayıtlarını tanımlamak için kullanılır.
PTR Kaydı;
Sadece Reverse Lookup Zone da kullanılabilir. Ip adresinden isme eşleşme yapan kayıttır. Yani 192.168.1.1 li ip ye sahip makinenin ismi nedir sorusuna DNS server PTR kayıtlarına bakarak cevap verir.
Pointer (imleç) kaydı, aramaları tersine çevirmek için kullanılır. Örneğin, 192.168.0.1‘i www.cozumpark.com ile eşleştirmek istediniz, kaydınız şu şekilde görünür: 1.0.168.192.in-addr.arpa PTR www.cozumpark.com.
NS Kaydı;
Network üzerinde bulunan ve kullanım da olan Dns Serverları tanımlar. Yani bir dns server network deki diğer Dns server dan bu kayıt sayesinde daha kolay ve hızlı bir şekilde haberdar olabiliyor denilebilir.
NS kayıtları, alan adları için, geçerli sunucu isimlerini belirlemeyi sağlar. NS kayıtları, sitenizin çalışmaya son vermesine neden olabilir. Genelde NS kayıtlarını değiştirmeye gerek yoktur.
AAA Kaydı;
A kaydı ile aynı işi yapar yani hostnameleri ip adresleri ile eşler ama ip V6 ile kullanılmak üzere tasarlanmış bir kayıttır.
Şimdi kaydımızı açabiliriz.
Biz www.cozumpark.com adresine gelen istekleri yönlendireceğimiz için rizasahan.com dns zone tanımları içerisinde www kaydı oluşturuyoruz. Name olarak www ip adresi olarak ise 10.81.2.21 (DNS sunucu ip adresi ) bilgisini girip Add Host butonuna tıklayalım.
Kaydımızın oluşturulduğuna dair gelen bilgi mesajını OK ile geçelim.
Oluşan www kaydımız aşağıdaki gibi gözükecektir.
Aynı işlemi yukarıdaki adımları takip ederek rizasahan.com Dns Zone içinde yapalım. Durum aşağıdaki gibi olacaktır.
Evet DNS tarafında yapılacak olan işlemler bunlar. Şimdi www.rizasahan.com ve www.cozumpark.com isimlerine ping atalım. İşlem başarılı olduğundan ping isteklerimize yanıt alabiliyoruz. Bu durumda sorun yaşamanız durumunda ipconfig/ flushdns komutu ile Dns önbelleğini temizleyip ping işlemini tekrar deneyerek veya yine çözülmez ise dns servislerini restart ederek sorunu aşabilirsiniz.
IIS üzerinde siteler genelde c:\inetpub\wwwroot dizininde tutulur. Biz iki site ile test yapacağımız için ben iki adet örnek site tasarlayarak bunları oluşturduğum klasörlere aktardım.
Sitelerin içerisinde örnek birer htm dosyası yer almakta.
Şimdi IIS üzerinde www.rizasahan.com ve www.cozumpark.com sitelerini çalıştırmak için gerekli işlemlere başlayalım. İlk olarak yeni bir site oluşturmak için iis üzerinde Sites kısmına sağ tıklayarak Add Website… kısmına tıklayalım.
Açılan ekranda sitemize bir isim verelim.
Sitemize rizasahan.com ismini verdikten sonra … butonu ile sitenin tutulduğu yolu gösterelim.
Sitemizin yolunu size yukarıda göstermiş olduğum C:\inetpub\wwwroot dizini altından gösterip işlemi OK butonuna tıklayarak tamamlıyorum.
Sitemizin yolunu da gösterdiğimize göre sitemize giriş yapılacak olan linki tanımlamamız gerekmekte. Bu işlem için biz dns üzerinde zone oluşturup www isimli A kaydı tanımlaması yapmıştık. Bu nedenle bu alana www.rizasahan.com olarak bilgilerimizi girelim.
Şu anda tüm tanımlamaları kısa sürede yaptık ve işlem tamamlanmayı bekliyor. OK butonuna tıklayalım.
Yukarıdaki adımları birebir olacak şekilde www.cozumpark.com alan adı için yapalım ve OK butonu ile adımlarımızı tamamlayalım.
Aşağıdaki ekranlarda görüldüğü gibi sitelerimizin tanımlaması yapıldı.
Şimdi test aşamasına geldik. www.rizasahan.com sitemiz sorunsuz çalışıyor.
www.cozumpark.com sitemizde sorunsuz çalışmakta.
Umarım yararlı bir makale olmuştur. Başka bir makalede görüşmek dileğiyle.