1 <?xml version='1.0' encoding='UTF-8' ?>
2 <!DOCTYPE manualpage SYSTEM "./style/manualpage.dtd">
3 <?xml-stylesheet type="text/xsl" href="./style/manual.tr.xsl"?>
4 <!-- English Revision: 1213338:1673947 (outdated) -->
7 Licensed to the Apache Software Foundation (ASF) under one or more
8 contributor license agreements. See the NOTICE file distributed with
9 this work for additional information regarding copyright ownership.
10 The ASF licenses this file to You under the Apache License, Version 2.0
11 (the "License"); you may not use this file except in compliance with
12 the License. You may obtain a copy of the License at
14 http://www.apache.org/licenses/LICENSE-2.0
16 Unless required by applicable law or agreed to in writing, software
17 distributed under the License is distributed on an "AS IS" BASIS,
18 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
19 See the License for the specific language governing permissions and
20 limitations under the License.
23 <manualpage metafile="configuring.xml.meta">
25 <title>Yapılandırma Dosyaları</title>
28 <p>Bu belgede Apache HTTP Sunucusunu yapılandırmakta kullanılan dosyalar
33 <title>Ana Yapılandırma Dosyaları</title>
36 <module>mod_mime</module>
39 <directive module="core" type="section">IfDefine</directive>
40 <directive module="core">Include</directive>
41 <directive module="mod_mime">TypesConfig</directive>
45 <p>Apache HTTP Sunucusu düz metin yapılandırma dosyalarına <a
46 href="mod/directives.html">yönergeler</a> yerleştirilerek yapılandırılır.
47 Ana yapılandırma dosyasının ismi normalde <code>httpd.conf</code>’tur.
48 Bu dosyanın yeri derleme sırasında belirlenir, ancak çalıştırma
49 sırasında <code>-f</code> komut satırı seçeneği ile başka bir yer
50 belirtilebilir. Ayrıca, <directive module="core">Include</directive>
51 yönergesi kullanılarak başka yapılandırma dosyaları da eklenebilir
52 ve bu dosyaların isimleri belirtilirken dosya ismi şablonları
53 kullanılabilir. Bu dosyaların içine de ana yapılandırma dosyasında
54 olduğu gibi her türlü yönerge yerleştirilebilir. Ana yapılandırma
55 dosyalarındaki değişiklikler httpd tarafından sadece başlatma veya
56 yeniden başlatma sırasında etkin kılınır.</p>
58 <p>Sunucu ayrıca MIME belge türlerini içeren bir dosya daha okur;
59 dosya ismi öntanımlı olarak <code>mime.types</code> olup <directive
60 module="mod_mime">TypesConfig</directive> yönergesi ile başka bir dosya
65 <title>Yapılandırma Dosyalarının Sözdizimi</title>
67 <p>httpd yapılandırma dosyalarının her satırında sadece bir yönerge
68 bulunur ve bir yönergenin birden fazla satıra yayılması daha iyi
69 olacaksa satır katlanabilir; devamı bir alt satırda olan her satırın
70 son karakteri “\” (tersbölü) olmalı, satırsonu karakteri ile bu tersbölü
71 karakteri arasında başka karakter bulunmamalıdır.</p>
73 <p>Yapılandırma dosyalarındaki yönergelerin isimleri harf büyüklüğüne
74 duyarlı olduğu halde argümanları genellikle harf büyüklüğüne duyarlı
75 değildir. Diyez (“#”) karakteri ile başlayan satırlar açıklama olarak
76 ele alınır ve yok sayılırlar. Yapılandırma yönergesi içeren satırların
77 ardına açıklama yerleştirilemez. Yönerge isminden önce yer alan boşluklar
78 ve boş satırlar yok sayılır; bu özellik, okunabilirliği sağlamak için
79 yönergelerin girintilenebilmesi olanağını verir.</p>
82 <p><directive module="core">Define</directive> ile veya kabuğun ortam
83 değişkenleri ile tanımlanmış değişkenlerin değerleri, yapılandırma
84 dosyasının satırlarında <code>${VAR}</code> sözdizimi ile kullanılabilir.
85 "VAR" geçerli bir değişkenin adı olduğu takdirde, bu değişkenin değeri
86 yapılandırma dosyasının bu noktasında yerine konacak ve orada zaten
87 değişken yerine değeri varmış gibi işlem kaldığı yerden devam edecektir.
88 <directive module="core">Define</directive> ile tanımlanmış değişkenler
89 kabuğun ortam değişkenlerinden önceliklidir. "VAR" diye bir değişken yoksa
90 <code>${VAR}</code> içindeki karakterler değişmeden kalır ve günlüğe bir
91 uyarı çıktılanır. <directive module="mod_rewrite">RewriteMap</directive>
92 sözdizimi ile olası bir karışıklığı önlemek için, değişken isimleri iki
93 nokta imini (":") içeremez.</p>
95 <p>Kabuğun ortam değişkenlerinin, sadece, sunucu başlatılmadan önce
96 tanımlanmış değerleri kullanılabilir. Yapılandırma dosyasının kendisinde
97 tanımlanmış ortam değişkenleri (örneğin,
98 <directive module="mod_env">SetEnv</directive> ile), yapılandırma
99 dosyasındaki işlemlerde çok daha sonra yer alır.</p>
101 <p>Yapılandırma dosyasındaki bir satırın uzunluğu, değişken ikamesi
102 yapıldıkta, devam satırları eklenditen sonra en fazla 16MiB olabilir. <a
103 href="configuring.xml#htaccess">.htaccess dosyalarında</a> azami uzunluk
104 8190 karakterdir.</p>
106 <p>Sunucuyu başlatmadan önce <code>apachectl configtest</code> ile veya
107 <code>-t</code> komut satırı seçeneği ile yapılandırma dosyalarınızı
108 sözdizimi hatalarına karşı sınayabilirsiniz.</p>
110 <p>Eşleşmeyen <directive module="core" type="section">IfDefine</directive>
111 ve <directive module="core" type="section">IfModule</directive> bölümleri
112 kaldırılmış, tüm açıklamalar, çözümlenmiş ortam değişkenleri ve içerilmiş
113 tüm dosyalar dahil yapılandırmanın bir dökümünü almak için
114 <module>mod_info</module>'nun <code>-DDUMP_CONFIG</code> seçeneğini
115 kullanabilirsiniz.</p>
118 <section id="modules">
119 <title>Modüller</title>
123 <module>mod_so</module>
126 <directive module="core" type="section">IfModule</directive>
127 <directive module="mod_so">LoadModule</directive>
131 <p>httpd modüler yapıda bir sunucudur. Bu, çekirdek sunucunun sadece en
132 temel işlevselliği içermesi demektir. Ek özellikler, httpd’ye <a
133 href="mod/">modüller</a> halinde yüklenebilir. Öntanımlı olarak, derleme
134 sırasında sunucunun <a href="mod/module-dict.html#Status">temel</a> bir
135 modül kümesi içermesi sağlanır. Eğer sunucu <a href="dso.html">devingen
136 yüklenen</a> modülleri kullanmak üzere yapılandırılarak derlenirse modüller
137 ayrı olarak derlenip gerektiği zaman <directive module="mod_so">
138 LoadModule</directive> yönergesi kullanılarak yüklenebilir. Aksi takdirde,
139 ek modülleri yükleyebilmek veya kaldırabilmek için httpd’nin yeniden
140 derlenmesi gerekir. Yapılandırma yönergeleri belli bir modülün varlığına
141 dayalı olarak bir <directive module="core" type="section">IfModule</directive>
142 bloku içine alınmak suretiyle sunucuya koşullu olarak eklenebilir. Ancak,
143 <directive module="core" type="section">IfModule</directive> yönergeleri
144 gerekli değildir, önemli bir modülün yokluğu gibi durumlarda
147 <p>Sunucunun içinde derlenmiş modüllerin listesini görmek için
148 <code>-l</code> komut satırı seçeneğini kullanabilirsiniz. Ayrıca,
149 <code>-M</code> komut satırı seçeneği ile hangi modüllerin devingen olarak
150 yüklendiğini görebilirsiniz.</p>
154 <title>Yönergelerin Etki Alanı</title>
158 <directive module="core" type="section">Directory</directive>
159 <directive module="core" type="section">DirectoryMatch</directive>
160 <directive module="core" type="section">Files</directive>
161 <directive module="core" type="section">FilesMatch</directive>
162 <directive module="core" type="section">Location</directive>
163 <directive module="core" type="section">LocationMatch</directive>
164 <directive module="core" type="section">VirtualHost</directive>
168 <p>Ana yapılandırma dosyasına yerleştirilen yönergeler sunucunun tamamına
169 uygulanır. Yapılandırmanızı sunucunun belli bir parçası için değiştirmek
170 isterseniz yönergelerinizi <directive module="core"
171 type="section">Directory</directive>, <directive module="core"
172 type="section">DirectoryMatch</directive>, <directive module="core"
173 type="section">Files</directive>, <directive module="core"
174 type="section">FilesMatch</directive>, <directive module="core"
175 type="section">Location</directive> ve <directive module="core"
176 type="section">LocationMatch</directive> bölümleri içine yerleştirerek etki
177 alanlarını değiştirebilirsiniz. Bu bölümler yönergelerin etkilediği
178 alanları dosya sistemininin belli yerleri veya belli URL’lerle sınırlar.
179 Yerine göre daha hassas ayarlamalar yapmak için bu bölgeler iç içe de
182 <p>httpd, çok sayıda farklı siteyi aynı anda sunabilecek yetenektedir.
183 Buna <a href="vhosts/">Sanal Konaklık</a> adı verilir. Yönergelerin etki
184 alanları ayrıca <directive module="core" type="section">VirtualHost</directive>
185 bölümleri içine konarak da değiştirilebilir. Böylece belli bir siteye gelen
186 isteklere farklı bir uygulama yapılabilir.</p>
188 <p>Yönergelerin çoğu bu bölümlere yerleştirilebilirse de bazı yönergelerin
189 bazı bağlamlarda bir etkisi olmaz. Örneğin, süreç oluşturmayı denetleyen
190 yönergeler sadece ana sunucu bağlamına yerleştirilebilir. Hangi yönergenin
191 hangi bağlama yerleştirilebileceğini bulmak için yönergenin <a
192 href="mod/directive-dict.html#Context">bağlamına</a> bakınız. Bu konuda daha
193 ayrıntılı bilgi edinmek için: <a href="sections.html">Directory, Location ve
194 Files Bölümleri Nasıl Çalışır</a>.</p>
197 <section id="htaccess">
198 <title>.htaccess Dosyaları</title>
202 <directive module="core">AccessFileName</directive>
203 <directive module="core">AllowOverride</directive>
207 <p>httpd yapılandırma sorumluluğunu dağıtmak için site ağaçları içine özel
208 dosyalar yerleştirilmesine izin verir. Bu özel dosyalar normalde
209 <code>.htaccess</code> dosyaları olmakla birlikte <directive module="core"
210 >AccessFileName</directive> yönergesi kullanılarak rasgele bir isim
211 belirtilebilir. <code>.htaccess</code> dosyalarına yerleştirilen yönergeler
212 sadece dosyanın bulunduğu dizine ve alt dizinlerine uygulanır.
213 <code>.htaccess</code> dosyalarında da ana yapılandırma dosyalarında geçerli
214 sözdizimi kullanılır. <code>.htaccess</code> dosyaları her istek gelişinde
215 yeniden okunduğundan bu dosyalarda yapılan değişiklikler hemen etkisini
218 <p><code>.htaccess</code> dosyalarına hangi yönergelerin
219 yerleştirilebileceğini bulmak için yönerge <a
220 href="mod/directive-dict.html#Context">bağlamına</a> bakınız.
221 Sunucunun yöneticisi <code>.htaccess</code> dosyalarına hangi yönergelerin
222 yerleştirilebileceğini ana yapılandırma dosyalarında
223 <directive module="core">AllowOverride</directive> yönergesini kullanarak
226 <p><code>.htaccess</code> dosyaları hakkında daha ayrıntılı bilgi edinmek
227 için <a href="howto/htaccess.html">.htaccess öğreticisi</a>ne bakabilirsiniz.</p>