<-
Apache > HTTP Sunucusu > Belgeleme > Sürüm 2.4

Apache HTTP Sunucusunun Durdurulmas? ve Yeniden Ba?lat?lmas?

Mevcut Diller:  de  |  en  |  es  |  fr  |  ja  |  ko  |  tr 

Bu belge Apache HTTP Sunucusunun Unix benzeri sistemlerde durdurulmas? ve yeniden ba?lat?lmas? konular?n? kapsar. Windows NT, 2000 ve XP kullan?c?lar? Apache HTTPd’yi bu platformlarda nas?l denetimlerine alacaklar?n? ??renmek i?in httpd’nin Bir Hizmet Olarak ?al??t?r?lmas? sayfas?na, Windows 9x ve ME kullan?c?lar? ise httpd’nin Bir Konsol Uygulamas? Olarak ?al??t?r?lmas? sayfas?na bakabilirler.

Support Apache!

Ayr?ca bak?n?z:

top

Giri?

Apache HTTP Sunucusunu durdurmak ve yeniden ba?latmak i?in ?al??an httpd süre?lerine bir sinyal g?ndermeniz gerekir. Sinyal g?ndermek i?in iki yol vard?r. ?lki, süre?lere do?rudan sinyal g?ndermek i?in unix kill komutunun kullan?m?d?r. Bu suretle, sisteminizde ?al??makta olan bir ?ok httpd sürecini uyarabilirsiniz ama süre? kimli?i PidFile y?nergesi ile belirtilen dosyada tutulan ana süre? d???nda hi?birine sinyal g?ndermemelisiniz. Ba?ka bir deyi?le, ana süre? haricinde hi?bir sürece sinyal g?ndermeye normal olarak ihtiyac?n?z olmamas? gerekir. Ana sürece g?nderebilece?iniz d?rt ?e?it sinyal vard?r: TERM, USR1, HUP ve WINCH. Bunlar yeri geldik?e a??klanacakt?r.

Ana sürece kill ile sinyal g?ndermek i?in ??yle bir komut verebilirsiniz:

kill -TERM `cat /usr/local/apache2/logs/httpd.pid`

httpd süre?lerine sinyal g?ndermenin ikinci yolu -k komut sat?r? se?ene?ini ?u de?erlerden biri ile kullanmakt?r: stop, restart, graceful ve graceful-stop. Bunlar a?a??da a??klanacakt?r. -k komut sat?r? se?ene?i httpd’ye ait olsa da ana sürece bu sinyalleri g?ndermek i?in apache2ctl beti?ini kullanman?z? ?neririz. apache2ctl, komut sat?r? se?eneklerini httpd’ye aktaracakt?r.

httpd’ye sinyal g?nderdikten sonra olup biteni ?u komutla izleyebilirsiniz:

tail -f /usr/local/apache2/logs/error_log

Bu ?rnekleri, kendi ServerRoot ve PidFile y?nergelerinizdeki ayarlara uygun olarak de?i?tirdikten sonra kullan?n?z.

top

Hemen Durdur

Sinyal: TERM
apache2ctl -k stop

Ana sürece TERM veya stop sinyali g?ndererek tüm ?ocuklar?n bir an ?nce ?ldürülmeye ?al???lmas?n? sa?lam?? olursunuz. Tüm ?ocuklar?n ?ldürülmesi bir ka? saniye sürebilir. Son olarak ana süre? ??kacakt?r. Yan?tlanmakta olan istekler hemen sonland?r?lacak ve art?k isteklere yan?t verilmeyecektir.

top

Nazik?e Yeniden Ba?lat

Sinyal: USR1
apache2ctl -k graceful

Ana sürece USR1 veya graceful sinyalinin g?nderilmesi, ?ocuklara ellerindeki mevcut i?leri bitirdikten sonra (veya sunduklar? bir ?ey yoksa hemen) ??kmalar?n?n ?nerilmesi demektir. Ana süre? kendi yap?land?rma dosyalar?n? yeniden okur ve kendi günlük dosyalar?n? yeniden a?ar. Ana sürecin ?ldürdü?ü her sürecin yerine yeni yap?land?rma ku?a??ndan bir süre? ba?lat?r ve hemen yeni isteklere hizmet sunulmaya ba?lan?r.

Bu kod MPM’lerin süre?leri denetleyen y?nergelerine daima uyacak ?ekilde tasarlanm??t?r. Bu suretle, istemcilere hizmet sunacak ?ocuk süre?ler ve evreler, yeniden ba?latma i?leminde de uygun say?da sa?lanm?? olur. Bununla birlikte, StartServers y?nergesinde ??yle davran?l?r: ?lk saniye i?inde en az?ndan StartServers say?da yeni ?ocuk olu?turulmam??sa i? olmayan bir devreyi ge?i?tirecek kadar? olu?turulur. Ard?ndan sunucunun mevcut yükünü kar??lamak i?in gereken say?da ?ocuk süre? olu?turulur. Bu suretle, kod her ikisi i?in de gere?ini yerine getirmeye ?al??m?? olur.

mod_status kullan?c?lar? USR1 g?nderildi?i zaman sunucu istatistiklerinin s?f?rlanmad??? konusunda uyar?lacakt?r. Kod, sunucunun yeni isteklere yan?t veremedi?i zaman? en aza indirmenin yan?s?ra ayar parametrelerinize de uymak üzere tasarlanm??t?r (yeni istekler i?letim sistemi taraf?ndan kuyru?a al?naca??ndan bir istek kayb? olay? ya?anmaz). Bunu sa?lamak i?in, her iki ku?a??n ?ocuklar?n?n izini sürecek bir ?etele tutulur.

mod_status modülü, nazik?e yeniden ba?lat komutunun verilmesinden ?nce ba?lam?? ve sunulmaya devam eden isteklere bakan ?ocuklar? imlemek i?in ayr?ca bir G (Graceful’un ba? harfi) kullan?r.

Günlük dosyas? d?ndürme beti?ine, yeniden ba?latma ?ncesi günlü?e yazan tüm ?ocuklar?n i?ini bitirdi?ini USR1 kullanarak bildirmenin bir yolu yoktur. ?nerimiz, eski günlük kayd? üzerinde bir i?lem yapmaya ba?lamadan ?nce USR1 sinyali g?nderilmesinin ard?ndan belli bir süre beklenilmesi olacakt?r. ?rne?in, dü?ük band geni?li?ine sahip istemcilere hizmet sunan ?o?u sürecin i?inin 10 dakikadan ?nce bitmeyece?ini g?z?nüne alarak eski günlük üzerinde i?lem yapmaya ba?lamak i?in 15 dakika beklenebilir.

Bir yeniden ba?latma iste?inde, yap?land?rma dosyalar?nda bir hata olmad???ndan emin olmak i?in ?nce bir s?zdizimi denetimi yap?l?r. E?er yap?land?rma dosyalar?n?zda bir hata varsa bu s?zdizimi hatas?yla ilgili bir hata iletisi al?rs?n?z ve sunucu yeniden ba?lamay? reddeder. Bu yolla, bir hata sonucu sunucunun ??kerek yeniden ba?lamamas? nedeniyle i?levsiz bir sunucuyla ba?ba?a kalman?z ?nlenmi?tir.

Ancak, bu hala sunucunuzun düzgünce yeniden ba?lat?lmas?n? garanti etmeyecektir. Yap?land?rma dosyalar?n?z? s?zdizimi denetiminin yan?nda anlamland?r?lmas? bak?m?ndan da s?namak i?in httpd’nin root olmayan bir kullan?c? taraf?ndan ?al??t?r?lmas?n? deneyebilirsiniz. E?er yap?land?rma dosyalar?nda bir hata yoksa soketleri ve günlük dosyalar?n? a?maya ?al???rken root aidiyetinde ?al??mad???ndan veya ?al??makta olan as?l sunucu bu portlar? zaten dinledi?inden ba?ar?s?z olacakt?r. E?er ba?ka bir sebeple ba?ar?s?z olursa olas? sebep bir yap?land?rma dosyas? hatas?d?r ve as?l sunucuya ‘nazik?e yeniden ba?la’ komutunu vermeden ?nce bu hatay? düzeltmeniz gerekir.

top

Hemen Yeniden Ba?lat

Sinyal: HUP
apache2ctl -k restart

Ana sürece HUP veya restart sinyalinin g?nderilmesi tüm ?ocuklar?n TERM sinyali g?nderilmi? gibi ?ldürülmesine sebep olur fakat ana sürecin ??kmas?n? sa?lamaz. Ana süre? yap?land?rma dosyalar?n? yeniden okur ve günlük kay?t dosyalar?n? yeniden a?ar. Bunlar?n ard?ndan isteklere yan?t verecek yeni ku?ak ?ocuklar? olu?turmaya ba?lar.

mod_status kullan?c?lar? bir HUP sinyal? g?nderildi?inde sunucu istatistiklerinin s?f?rland??? konusunda uyar?l?rlar.

‘Nazik?e yeniden ba?lat’ komutundaki gibi yeniden ba?latma ?ncesi bir s?zdizimi denetimi yap?l?r. E?er yap?land?rma dosyalar?n?zda s?zdizimi hatas? varsa yeniden ba?latma i?lemi ger?ekle?mez ve s?zdizimi hatalar?yla ilgili bildirim al?rs?n?z.
top

Nazik?e Durdur

Sinyal: WINCH
apache2ctl -k graceful-stop

Ana sürecin WINCH veya graceful-stop sinyalini almas?, ?ocuklara ellerindeki mevcut i?leri bitirdikten sonra (veya sunduklar? bir ?ey yoksa hemen) ??kmalar?n?n ?nerilmesine sebep olur. Ana süre? bunun hemen ard?ndan PidFile dosyas?n? siler ve port dinlemeyi keser. Ana süre? ?al??maya ve isteklere yan?t vermekte olan ?ocuk süre?leri izlemeye devam eder. Tüm ?ocuklar i?lerini bitirip ??kt???nda veya GracefulShutdownTimeout ile belirtilen zaman a??m? doldu?unda ana süre? de kendini sonland?r?r. E?er zaman a??m? devreye girmi?se o an ?al??makta olan ?ocuk süre?lere TERM sinyali g?nderilerek hemen ??kmalar? sa?lan?r.

Bir TERM sinyali ile "graceful" durumundaki tüm ?ocuklar ve ana süre? hemen sonland?r?lacakt?r. Bununla birlikte, PidFile dosyas? da silinece?inden, art?k apache2ctl veya httpd’yi bu sinyali g?ndermek i?in kullanamayacaks?n?z.

graceful-stop sinyali, ayn? anda, ayn? yap?land?rma ile ?ok say?da httpd kopyas?n?n ?al??t?r?labilmesine imkan verir. Bu, Apache nazik?e yükseltilece?i zaman gü?lü bir ?zellik haline gelmekteyse de, baz? yap?land?rmalarda yar?? ko?ullar?n?n olu?mas?na ve k?s?r ?eki?melere (deadlock) sebep olabilir.

Sunucunun süre? kimli?ini i?eren kilit dosyalar? (Mutex) ve Unix soket dosyalar? (ScriptSock) gibi dosyalar?n disk üzerindeki mevcudiyetlerinin sorunsuz olarak devam etti?inden emin olunmaya ?al???lmal?d?r. Ayr?ca, bir yap?land?rma y?nergesi, ü?üncü parti bir modül veya kal?c? CGI uygulamalar?na ait disk kilit veya durum dosyalar? olabilir; httpd’nin birden fazla kopyas?n?n ?al??mas? nedeniyle bu dosyalar?n da üzerine yaz?lmad???ndan emin olunmaya ?al???lmal?d?r.

rotatelogs tarz? borulu günlükleme kullan?m? gibi durumlarda yar?? ko?ullar?n?n olu?mas? olas?l???na kar?? uyan?k olunmal?d?r. Ayn? günlük kay?t dosyalar?n? ayn? anda d?ndürmeye ?al??an birden fazla rotatelogs kopyas?n?n ?al??t?r?lmas? halinde bunlar?n her biri di?erlerinin günlük kay?t dosyalar?n?n kayb?na sebep olabilir.

Mevcut Diller:  de  |  en  |  es  |  fr  |  ja  |  ko  |  tr 

top

Yorum

Notice:
This is not a Q&A section. Comments placed here should be pointed towards suggestions on improving the documentation or server, and may be removed again by our moderators if they are either implemented or considered invalid/off-topic. Questions on how to manage the Apache HTTP Server should be directed at either our IRC channel, #httpd, on Freenode, or sent to our mailing lists.
白小姐透特期期