From c0b7206652b2852bc574694e7ba07ba1c2acdc00 Mon Sep 17 00:00:00 2001 From: hongbotian Date: Mon, 30 Nov 2015 03:10:21 -0500 Subject: delete app Change-Id: Id4c572809969ebe89e946e88063eaed262cff3f2 Signed-off-by: hongbotian --- .../docs/manual/vhosts/mass.html.tr.utf8 | 406 --------------------- 1 file changed, 406 deletions(-) delete mode 100644 rubbos/app/httpd-2.0.64/docs/manual/vhosts/mass.html.tr.utf8 (limited to 'rubbos/app/httpd-2.0.64/docs/manual/vhosts/mass.html.tr.utf8') diff --git a/rubbos/app/httpd-2.0.64/docs/manual/vhosts/mass.html.tr.utf8 b/rubbos/app/httpd-2.0.64/docs/manual/vhosts/mass.html.tr.utf8 deleted file mode 100644 index ff3f9990..00000000 --- a/rubbos/app/httpd-2.0.64/docs/manual/vhosts/mass.html.tr.utf8 +++ /dev/null @@ -1,406 +0,0 @@ - - - -Devingen olarak Yapılandırılan Kitlesel Sanal Barındırma - Apache HTTP Sunucusu - - - - - -
<-
-

Devingen olarak Yapılandırılan Kitlesel Sanal Barındırma

-
-

Mevcut Diller:  en  | - ko  | - tr 

-
- - -

Bu belgede sanal konakların sonu belirsiz bir şekilde artışı karşısında - Apache httpd sunucusunun nasıl daha verimli kullanılacağı açıklanmıştır. -

- -
- -
top
-
-

Amaç

- -

Burada açıklanan teknikler, httpd.conf dosyanızın - örnekteki gibi, aslında hemen hemen birbirinin aynı çok sayıda - <VirtualHost> bölümü içereceği zaman yapılacaklar ile - ilgilidir.

- -

-NameVirtualHost 111.22.33.44
-<VirtualHost 111.22.33.44>
- - ServerName musteri-1.dom
- DocumentRoot /siteler/musteri-1.dom/belgeler
- ScriptAlias /cgi-bin/ /siteler/musteri-1.dom/cgi-bin
-
-</VirtualHost>
-<VirtualHost 111.22.33.44>
- - ServerName musteri-2.dom
- DocumentRoot /siteler/musteri-2.dom/belgeler
- ScriptAlias /cgi-bin/ /siteler/musteri-2.dom/cgi-bin
-
-</VirtualHost>
-# blah blah blah
-<VirtualHost 111.22.33.44>
- - ServerName musteri-N.dom
- DocumentRoot /siteler/musteri-N.dom/belgeler
- ScriptAlias /cgi-bin/ /siteler/musteri-N.dom/cgi-bin
-
-</VirtualHost> -

- -

Ana fikir, tüm durağan <VirtualHost> - yapılandırmalarını devingen olarak çalışan tek bir - <VirtualHost> bölümüyle değiştirmektir. Bunun elbette - bazı getirileri olacaktır:

- -
    -
  1. Yapılandırma dosyanız küçüleceği için Apache daha çabuk - başlatılabilecek ve daha az bellek harcayacaktır.
  2. - -
  3. Yeni sanal konakların eklenmesi, DNS’de yeni girdiler oluşturmak ve - dosya sisteminde bununla ilgili dizinleri açmak dışında biraz daha - basit olacaktır; en azından Apache’yi yeniden yapılandırmak ve yeniden - başlatmak zorunda kalmayacaksınız.
  4. -
- -

Ana götürüsü ise her sanal konak için ayrı birer günlük dosyasına sahip - olamayacak olmanızdır. Öte yandan, dosya tanıtıcılarının sınırlı olması - nedeniyle bunu yapmayı zaten istemezsiniz. Günlük kayıtları için bir - fifo veya bir boru hattı oluşturmak ve diğer uçta çalışan bir süreç - vasıtasıyla günlükleri müşterilere paylaştırmak daha iyidir (ayrıca, bu, - istatistikleri toplamanızı da kolaylaştırır).

- -
top
-
-

Genel Bakış

- -

Bir sanal konak iki bilgiye bakarak belirlenir: IP adresi ve HTTP - isteğindeki Host: başlığının içeriği. Devingen sanal - barındırma tekniği, isteği yerine getirmek için kullanılacak dosya - yoluna bu bilgiyi kendiliğinden girmek esasına dayanır. Bu, Apache 2.0 - ile mod_vhost_alias kullanarak oldukça kolay - yapılabileceği gibi mod_rewrite da kullanılabilir. Bu - modüllerin her ikisi de öntanımlı olarak devre dışıdır. Bu tekniği - kullanmak isterseniz Apache’yi yeniden yapılandırıp derleyerek bu iki - modülü etkin duruma getirmeniz gerekir.

- -

Devingen sanal konağı normal bir sanal konak gibi göstermek için bazı - şeyleri ’göstermelik’ olarak yapmak gerekir. Bunlardan en önemlisi, - Apache tarafından göreli URL’lerden normal URL’leri ve benzerlerini - üretmek için kullanılan sunucu ismidir. Sunucu ismi - ServerName yönergesi ile yapılandırılır ve CGI’ler - tarafından SERVER_NAME ortam değişkeni üzerinden - kullanılır. Çalışma anındaki asıl değer UseCanonicalName yönergesi tarafından denetlenir. - UseCanonicalName Off olduğunda sunucu ismi isteğin - Host: başlık alanından elde edilir. UseCanonicalName - DNS belirtilmişse, sunucu ismi, sanal konağın IP adresinden - tersine DNS sorgusu yapılarak elde edilir. Birincisi isme dayalı sanal - konaklar tarafından ikincisi ise IP’ye dayalı sanal konaklar tarafından - kullanılır. Eğer Apache, istekte Host: başlığının olmayışı - veya DNS sorgusunun başarısız olması sebebiyle sunucu ismini elde - edemezse son çare olarak ServerName yönergesinde yazılı - değeri kullanır.

- -

‘Göstermelik’ yapılan şeylerden biri de DocumentRoot - yönergesi ile yapılandırılan belge kök dizini olup CGI’ler tarafından - DOCUMENT_ROOT ortam değişkeni üzerinden kullanılır. Normal - yapılandırmada core modülü tarafından dosya isimlerini - URI’lere eşlerken kullanılır. Fakat sunucu devingen sanal konakları - kullanmak üzere yapılandırıldığında, eşleştirmeyi farklı yollardan yapan - başka bir modül devreye girer (mod_vhost_alias veya - mod_rewrite). DOCUMENT_ROOT ortam değişkenine - değerini atamaktan sorumlu olan bu iki modülden biri kullanılmazsa CGI - veya SSI belgeleri yanlış değerlerle üretilirler.

- -
top
-
-

Basit Devingen Sanal Konaklar

- -

Yukarıda Amaç bölümünde özetlenen sanal konak - düzenlemesinin mod_vhost_alias kullanarak daha soysal bir - tarzda gerçekleştirilmiş halini içeren httpd.conf bölümü - aşağıdadır.

- -

-# sunucu ismini Host: başlığından elde edelim
-UseCanonicalName Off
-
-# Bu günlükleme biçiminde ilk alana bakarak
-# sanal konak günlükleri ayrıştırılabilir
-LogFormat "%V %h %l %u %t \"%r\" %s %b" vcommon
-CustomLog logs/access_log vcommon
-
-# istekleri yerine getirmek için kullanılacak
-# dosya isimlerine sunucu ismini ekleyelim
-VirtualDocumentRoot /siteler/%0/belgeler
-VirtualScriptAlias /siteler/%0/cgi-bin -

- -

Bu yapılandırmayı IP’ye dayalı sanal konaklar için kullanmak isterseniz - UseCanonicalName Off yerine UseCanonicalName - DNS yazmanız yeterlidir. Böylece dosya ismine eklenecek konak - ismi sanal konağın IP adresinden türetilir.

- -
top
-
-

Sanal Kişisel Sayfalar Sistemi

- -

Bu sistem, yukarıdaki yapılandırmanın bir ISS’nin kişisel sayfalar - sunucusuna uyarlanmasından başka bir şey değildir. Biraz daha karmaşık - bir yapılandırma ile dosya isimlerine /home/kullanıcı/ - dizinlerini ekleyebiliriz. Farklı olarak her sanal konak için bir tane - değil hepsi için bir tane cgi-bin olacaktır.

- -

-# Son bölüm hariç yukarıdaki yapılandırma, burada...
-
-# sunucu ismine eklenecek dosya isimlerini oluşturalım
-VirtualDocumentRoot /siteler/%2/belgeler
-
-# ortak cgi-bin dizini
-ScriptAlias /cgi-bin/ /siteler/std-cgi/
-

- -

mod_vhost_alias belgesinde daha karmaşık - VirtualDocumentRoot örnekleri vardır.

- -
top
-
-

Aynı Sunucuda Kişisel ve Kurumsal Sanal Konaklar

- -

Daha karmaşık ayarlamalar yaparak Apache’inin normal - <VirtualHost> bölümlerini farklı kitlesel sanal konak - yapılandırmaları için kullanabilirsiniz. Örneğin, bireysel - müşterileriniz için bir IP adresiniz, kurumsal müşterileriniz için de - başka bir IP adresiniz olsun. Her biri için ayrı ayrı sanal konaklar - ayarlamak yerine aşağıdaki gibi bir yapılandırma kullanabilirsiniz:

- -

-UseCanonicalName Off
-
-LogFormat "%V %h %l %u %t \"%r\" %s %b" vcommon
-
-<Directory /siteler/kurumsal>
- - Options FollowSymLinks
- AllowOverride All
-
-</Directory>
-
-<Directory /siteler/bireysel>
- - Options FollowSymLinks
- AllowOverride None
-
-</Directory>
-
-<VirtualHost 111.22.33.44>
- - ServerName kurumsal.iss.dom
-
- CustomLog logs/access_log.kurumsal vcommon
-
- VirtualDocumentRoot /siteler/kurumsal/%0/belgeler
- VirtualScriptAlias /siteler/kurumsal/%0/cgi-bin
-
-</VirtualHost>
-
-<VirtualHost 111.22.33.45>
- - ServerName bireysel.iss.dom
-
- CustomLog logs/access_log.bireysel vcommon
-
- VirtualDocumentRoot /siteler/bireysel/%0/belgeler
- ScriptAlias /cgi-bin/ /siteler/std-cgi/
-
-</VirtualHost> -

-
top
-
-

IP’ye dayalı sanal konakları daha verimli kılmak

- -

İlk örnekte IP’ye dayalı sanal konaklar için - kullanılmak istenirse yapılandırmada neyin nasıl değiştirileceği - belirtilmişti. Her istek için ayrı bir DNS sorgusu gerekeceğinden bu - başarım düşmesine yol açar. DNS sorgusu ihtiyacını ortadan kaldırmak - için, bir çözüm olarak dosya sistemi, konak isimleri yerine IP - adreslerine göre düzenlenebilir. Günlük kayıtları da IP adreslerine göre - ayrıştırılacak şekilde ayarlanabilir.

- -

-# Sunucu ismini IP adresinden ters DNS sorgusu ile elde edelim
-UseCanonicalName DNS
-
-# Günlük kayıtları IP adreslerine göre ayrıştırılabilsin
-LogFormat "%A %h %l %u %t \"%r\" %s %b" vcommon
-CustomLog logs/access_log vcommon
-
-# dosya isimleri IP adreslerini içersin
-VirtualDocumentRootIP /siteler/%0/belgeler
-VirtualScriptAliasIP /siteler/%0/cgi-bin
-

- -
top
-
-

mod_rewrite ile Kurumsal Müşteriler Sistemi

- -

Buradaki httpd.conf bölümü de ilk - örnekteki gibi elde edilmiştir. İlk yarı, bazı değişiklikler dışında - yukarıdaki örneğe çok benzer. Bu değişiklikler yapılandırmanın - mod_rewrite bölümünün düzgün çalışması ve geriye doğru - uyumluluk için gereklidir. İkinci yarı, asıl işi yapan - mod_rewrite yapılandırmasını içerir.

- -

Biraz uzmanlık gerektiren bazı kısımlar var: Öntanımlı olarak - mod_rewrite diğer (mod_alias, vs. gibi) URI - dönüşüm modüllerinden önce çalışır. Dolayısıyla bu modülleri kullanmak - isterseniz, mod_rewrite’ı bunlara izin verecek şekilde - yapılandırmalısınız. Ayrıca her devingen sanal konağa eşdeğer bir - ScriptAlias yapmak için de biraz büyü yapmak gerekir.

- -

-# Sunucu ismini Host: başlığınıdan alalım.
-UseCanonicalName Off
-
-# Günlük dosyasından bilgileri ayıklayabilelim.
-LogFormat "%{Host}i %h %l %u %t \"%r\" %s %b" vcommon
-CustomLog logs/access_log vcommon
-
-<Directory /siteler/hosts>
- - # ScriptAlias için yaptıklarımızla CGI betiklerini
- # çalışmaya zorlayamayacağımızdan ExecCGI burada gerekli.
- Options FollowSymLinks ExecCGI
-
-</Directory>
-
-# İşin zor yanına geldik.
-
-RewriteEngine On
-
-# Host: başlığından elde edilen sunucu isminde harf
-# büyüklükleri çeşitli olabilir. Hepsini küçük harf yapalım.
-RewriteMap lowercase int:tolower
-
-## önce normal belgelerle anlaşalım:
-# Alias /icons/ çalışsın - diğer rumuzlar için yineleyelim
-RewriteCond %{REQUEST_URI} !^/icons/
-# CGI’ler de çalışsın.
-RewriteCond %{REQUEST_URI} !^/cgi-bin/
-# Biraz da büyü yapalım.
-RewriteRule ^/(.*)$ /siteler/${lowercase:%{SERVER_NAME}}/belgeler/$1
-
-## Artık CGI’lerle anlaşabiliriz. - Bir MIME türü isteyelim.
-RewriteCond %{REQUEST_URI} ^/cgi-bin/
-RewriteRule ^/(.*)$ /siteler/${lowercase:%{SERVER_NAME}}/cgi-bin/$1 [T=application/x-httpd-cgi]
-
-# Bu kadar! -

- -
top
-
-

mod_rewrite ile Kişisel Sayfalar Sistemi

- -

Burada da ikinci örnekte yaptıklarımızı - yapıyoruz.

- -

-RewriteEngine on
-
-RewriteMap lowercase int:tolower
-
-# CGI’ler çalışsın.
-RewriteCond %{REQUEST_URI} !^/cgi-bin/
-
-# konak ismi doğru mu bakalım yoksa RewriteRule çalışmaz.
-RewriteCond ${lowercase:%{SERVER_NAME}} ^www\.[a-z-]+\.isp\.dom$
-
-# URI’nin başına sanal konak ismini ekleyelim.
-# [C], bunu bitirdikten sonra, sonraki rewrite ile devam et demek.
-RewriteRule ^(.+) ${lowercase:%{SERVER_NAME}}$1 [C]
-
-# Artık asıl dosya ismini oluşturabiliriz.
-RewriteRule ^www\.([a-z-]+)\.isp\.dom/(.*) /home/$1/$2
-
-# Ortak CGI dizinini tanımlayalım.
-ScriptAlias /cgi-bin/ /siteler/std-cgi/ -

- -
top
-
-

Sanal konaklar için ayrı bir yapılandırma dosyası kullanmak

- -

Burada, sanal konak isimlerinden belge kök dizini elde ederken - mod_rewrite modülünün daha gelişkin özelliklerinden - yararlanarak isimleri ayrı bir dosyadan okutacağız. Bu, esnekliği - artırır ama daha karmaşık bir yapılandırma gerekir.

- -

Aşağıdaki içeriğe sahip bir vhost.mapdosyamız olsun:

- -

-musteri-1.dom /siteler/kurumsal/1
-musteri-2.dom /siteler/kurumsal/2
-# ...
-musteri-N.dom /siteler/kurumsal/N
-

- -

httpd.conf dosyamız da şunları içerecektir:

- -

-RewriteEngine on
-
-RewriteMap lowercase int:tolower
-
-# Eşlem dosyasını tanımlayalım
-RewriteMap vhost txt:/siteler/conf/vhost.map
-
-# Rumuzları yukarıdaki gibi halledelim.
-RewriteCond %{REQUEST_URI} !^/icons/
-RewriteCond %{REQUEST_URI} !^/cgi-bin/
-RewriteCond ${lowercase:%{SERVER_NAME}} ^(.+)$
-# Eşlemeyi dosyalar için de yapalım.
-RewriteCond ${vhost:%1} ^(/.*)$
-RewriteRule ^/(.*)$ %1/belgeler/$1
-
-RewriteCond %{REQUEST_URI} ^/cgi-bin/
-RewriteCond ${lowercase:%{SERVER_NAME}} ^(.+)$
-RewriteCond ${vhost:%1} ^(/.*)$
-RewriteRule ^/(.*)$ %1/cgi-bin/$1 -

- -
-
-

Mevcut Diller:  en  | - ko  | - tr 

-
- \ No newline at end of file -- cgit 1.2.3-korg