mirror of
https://github.com/apache/httpd.git
synced 2025-07-04 05:22:30 +03:00
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1674088 13f79535-47bb-0310-9956-ffa450edef68
230 lines
12 KiB
XML
230 lines
12 KiB
XML
<?xml version='1.0' encoding='UTF-8' ?>
|
||
<!DOCTYPE manualpage SYSTEM "./style/manualpage.dtd">
|
||
<?xml-stylesheet type="text/xsl" href="./style/manual.tr.xsl"?>
|
||
<!-- English Revision: 1213338:1673947 (outdated) -->
|
||
|
||
<!--
|
||
Licensed to the Apache Software Foundation (ASF) under one or more
|
||
contributor license agreements. See the NOTICE file distributed with
|
||
this work for additional information regarding copyright ownership.
|
||
The ASF licenses this file to You under the Apache License, Version 2.0
|
||
(the "License"); you may not use this file except in compliance with
|
||
the License. You may obtain a copy of the License at
|
||
|
||
http://www.apache.org/licenses/LICENSE-2.0
|
||
|
||
Unless required by applicable law or agreed to in writing, software
|
||
distributed under the License is distributed on an "AS IS" BASIS,
|
||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||
See the License for the specific language governing permissions and
|
||
limitations under the License.
|
||
-->
|
||
|
||
<manualpage metafile="configuring.xml.meta">
|
||
|
||
<title>Yapılandırma Dosyaları</title>
|
||
|
||
<summary>
|
||
<p>Bu belgede Apache HTTP Sunucusunu yapılandırmakta kullanılan dosyalar
|
||
açıklanmıştır.</p>
|
||
</summary>
|
||
|
||
<section id="main">
|
||
<title>Ana Yapılandırma Dosyaları</title>
|
||
<related>
|
||
<modulelist>
|
||
<module>mod_mime</module>
|
||
</modulelist>
|
||
<directivelist>
|
||
<directive module="core" type="section">IfDefine</directive>
|
||
<directive module="core">Include</directive>
|
||
<directive module="mod_mime">TypesConfig</directive>
|
||
</directivelist>
|
||
</related>
|
||
|
||
<p>Apache HTTP Sunucusu düz metin yapılandırma dosyalarına <a
|
||
href="mod/directives.html">yönergeler</a> yerleştirilerek yapılandırılır.
|
||
Ana yapılandırma dosyasının ismi normalde <code>httpd.conf</code>’tur.
|
||
Bu dosyanın yeri derleme sırasında belirlenir, ancak çalıştırma
|
||
sırasında <code>-f</code> komut satırı seçeneği ile başka bir yer
|
||
belirtilebilir. Ayrıca, <directive module="core">Include</directive>
|
||
yönergesi kullanılarak başka yapılandırma dosyaları da eklenebilir
|
||
ve bu dosyaların isimleri belirtilirken dosya ismi şablonları
|
||
kullanılabilir. Bu dosyaların içine de ana yapılandırma dosyasında
|
||
olduğu gibi her türlü yönerge yerleştirilebilir. Ana yapılandırma
|
||
dosyalarındaki değişiklikler httpd tarafından sadece başlatma veya
|
||
yeniden başlatma sırasında etkin kılınır.</p>
|
||
|
||
<p>Sunucu ayrıca MIME belge türlerini içeren bir dosya daha okur;
|
||
dosya ismi öntanımlı olarak <code>mime.types</code> olup <directive
|
||
module="mod_mime">TypesConfig</directive> yönergesi ile başka bir dosya
|
||
belirtilebilir.</p>
|
||
</section>
|
||
|
||
<section id="syntax">
|
||
<title>Yapılandırma Dosyalarının Sözdizimi</title>
|
||
|
||
<p>httpd yapılandırma dosyalarının her satırında sadece bir yönerge
|
||
bulunur ve bir yönergenin birden fazla satıra yayılması daha iyi
|
||
olacaksa satır katlanabilir; devamı bir alt satırda olan her satırın
|
||
son karakteri “\” (tersbölü) olmalı, satırsonu karakteri ile bu tersbölü
|
||
karakteri arasında başka karakter bulunmamalıdır.</p>
|
||
|
||
<p>Yapılandırma dosyalarındaki yönergelerin isimleri harf büyüklüğüne
|
||
duyarlı olduğu halde argümanları genellikle harf büyüklüğüne duyarlı
|
||
değildir. Diyez (“#”) karakteri ile başlayan satırlar açıklama olarak
|
||
ele alınır ve yok sayılırlar. Yapılandırma yönergesi içeren satırların
|
||
ardına açıklama yerleştirilemez. Yönerge isminden önce yer alan boşluklar
|
||
ve boş satırlar yok sayılır; bu özellik, okunabilirliği sağlamak için
|
||
yönergelerin girintilenebilmesi olanağını verir.</p>
|
||
|
||
|
||
<p><directive module="core">Define</directive> ile veya kabuğun ortam
|
||
değişkenleri ile tanımlanmış değişkenlerin değerleri, yapılandırma
|
||
dosyasının satırlarında <code>${VAR}</code> sözdizimi ile kullanılabilir.
|
||
"VAR" geçerli bir değişkenin adı olduğu takdirde, bu değişkenin değeri
|
||
yapılandırma dosyasının bu noktasında yerine konacak ve orada zaten
|
||
değişken yerine değeri varmış gibi işlem kaldığı yerden devam edecektir.
|
||
<directive module="core">Define</directive> ile tanımlanmış değişkenler
|
||
kabuğun ortam değişkenlerinden önceliklidir. "VAR" diye bir değişken yoksa
|
||
<code>${VAR}</code> içindeki karakterler değişmeden kalır ve günlüğe bir
|
||
uyarı çıktılanır. <directive module="mod_rewrite">RewriteMap</directive>
|
||
sözdizimi ile olası bir karışıklığı önlemek için, değişken isimleri iki
|
||
nokta imini (":") içeremez.</p>
|
||
|
||
<p>Kabuğun ortam değişkenlerinin, sadece, sunucu başlatılmadan önce
|
||
tanımlanmış değerleri kullanılabilir. Yapılandırma dosyasının kendisinde
|
||
tanımlanmış ortam değişkenleri (örneğin,
|
||
<directive module="mod_env">SetEnv</directive> ile), yapılandırma
|
||
dosyasındaki işlemlerde çok daha sonra yer alır.</p>
|
||
|
||
<p>Yapılandırma dosyasındaki bir satırın uzunluğu, değişken ikamesi
|
||
yapıldıkta, devam satırları eklenditen sonra en fazla 16MiB olabilir. <a
|
||
href="configuring.xml#htaccess">.htaccess dosyalarında</a> azami uzunluk
|
||
8190 karakterdir.</p>
|
||
|
||
<p>Sunucuyu başlatmadan önce <code>apachectl configtest</code> ile veya
|
||
<code>-t</code> komut satırı seçeneği ile yapılandırma dosyalarınızı
|
||
sözdizimi hatalarına karşı sınayabilirsiniz.</p>
|
||
|
||
<p>Eşleşmeyen <directive module="core" type="section">IfDefine</directive>
|
||
ve <directive module="core" type="section">IfModule</directive> bölümleri
|
||
kaldırılmış, tüm açıklamalar, çözümlenmiş ortam değişkenleri ve içerilmiş
|
||
tüm dosyalar dahil yapılandırmanın bir dökümünü almak için
|
||
<module>mod_info</module>'nun <code>-DDUMP_CONFIG</code> seçeneğini
|
||
kullanabilirsiniz.</p>
|
||
</section>
|
||
|
||
<section id="modules">
|
||
<title>Modüller</title>
|
||
|
||
<related>
|
||
<modulelist>
|
||
<module>mod_so</module>
|
||
</modulelist>
|
||
<directivelist>
|
||
<directive module="core" type="section">IfModule</directive>
|
||
<directive module="mod_so">LoadModule</directive>
|
||
</directivelist>
|
||
</related>
|
||
|
||
<p>httpd modüler yapıda bir sunucudur. Bu, çekirdek sunucunun sadece en
|
||
temel işlevselliği içermesi demektir. Ek özellikler, httpd’ye <a
|
||
href="mod/">modüller</a> halinde yüklenebilir. Öntanımlı olarak, derleme
|
||
sırasında sunucunun <a href="mod/module-dict.html#Status">temel</a> bir
|
||
modül kümesi içermesi sağlanır. Eğer sunucu <a href="dso.html">devingen
|
||
yüklenen</a> modülleri kullanmak üzere yapılandırılarak derlenirse modüller
|
||
ayrı olarak derlenip gerektiği zaman <directive module="mod_so">
|
||
LoadModule</directive> yönergesi kullanılarak yüklenebilir. Aksi takdirde,
|
||
ek modülleri yükleyebilmek veya kaldırabilmek için httpd’nin yeniden
|
||
derlenmesi gerekir. Yapılandırma yönergeleri belli bir modülün varlığına
|
||
dayalı olarak bir <directive module="core" type="section">IfModule</directive>
|
||
bloku içine alınmak suretiyle sunucuya koşullu olarak eklenebilir. Ancak,
|
||
<directive module="core" type="section">IfModule</directive> yönergeleri
|
||
gerekli değildir, önemli bir modülün yokluğu gibi durumlarda
|
||
maskelenebilir.</p>
|
||
|
||
<p>Sunucunun içinde derlenmiş modüllerin listesini görmek için
|
||
<code>-l</code> komut satırı seçeneğini kullanabilirsiniz. Ayrıca,
|
||
<code>-M</code> komut satırı seçeneği ile hangi modüllerin devingen olarak
|
||
yüklendiğini görebilirsiniz.</p>
|
||
</section>
|
||
|
||
<section id="scope">
|
||
<title>Yönergelerin Etki Alanı</title>
|
||
|
||
<related>
|
||
<directivelist>
|
||
<directive module="core" type="section">Directory</directive>
|
||
<directive module="core" type="section">DirectoryMatch</directive>
|
||
<directive module="core" type="section">Files</directive>
|
||
<directive module="core" type="section">FilesMatch</directive>
|
||
<directive module="core" type="section">Location</directive>
|
||
<directive module="core" type="section">LocationMatch</directive>
|
||
<directive module="core" type="section">VirtualHost</directive>
|
||
</directivelist>
|
||
</related>
|
||
|
||
<p>Ana yapılandırma dosyasına yerleştirilen yönergeler sunucunun tamamına
|
||
uygulanır. Yapılandırmanızı sunucunun belli bir parçası için değiştirmek
|
||
isterseniz yönergelerinizi <directive module="core"
|
||
type="section">Directory</directive>, <directive module="core"
|
||
type="section">DirectoryMatch</directive>, <directive module="core"
|
||
type="section">Files</directive>, <directive module="core"
|
||
type="section">FilesMatch</directive>, <directive module="core"
|
||
type="section">Location</directive> ve <directive module="core"
|
||
type="section">LocationMatch</directive> bölümleri içine yerleştirerek etki
|
||
alanlarını değiştirebilirsiniz. Bu bölümler yönergelerin etkilediği
|
||
alanları dosya sistemininin belli yerleri veya belli URL’lerle sınırlar.
|
||
Yerine göre daha hassas ayarlamalar yapmak için bu bölgeler iç içe de
|
||
kullanılabilir.</p>
|
||
|
||
<p>httpd, çok sayıda farklı siteyi aynı anda sunabilecek yetenektedir.
|
||
Buna <a href="vhosts/">Sanal Konaklık</a> adı verilir. Yönergelerin etki
|
||
alanları ayrıca <directive module="core" type="section">VirtualHost</directive>
|
||
bölümleri içine konarak da değiştirilebilir. Böylece belli bir siteye gelen
|
||
isteklere farklı bir uygulama yapılabilir.</p>
|
||
|
||
<p>Yönergelerin çoğu bu bölümlere yerleştirilebilirse de bazı yönergelerin
|
||
bazı bağlamlarda bir etkisi olmaz. Örneğin, süreç oluşturmayı denetleyen
|
||
yönergeler sadece ana sunucu bağlamına yerleştirilebilir. Hangi yönergenin
|
||
hangi bağlama yerleştirilebileceğini bulmak için yönergenin <a
|
||
href="mod/directive-dict.html#Context">bağlamına</a> bakınız. Bu konuda daha
|
||
ayrıntılı bilgi edinmek için: <a href="sections.html">Directory, Location ve
|
||
Files Bölümleri Nasıl Çalışır</a>.</p>
|
||
</section>
|
||
|
||
<section id="htaccess">
|
||
<title>.htaccess Dosyaları</title>
|
||
|
||
<related>
|
||
<directivelist>
|
||
<directive module="core">AccessFileName</directive>
|
||
<directive module="core">AllowOverride</directive>
|
||
</directivelist>
|
||
</related>
|
||
|
||
<p>httpd yapılandırma sorumluluğunu dağıtmak için site ağaçları içine özel
|
||
dosyalar yerleştirilmesine izin verir. Bu özel dosyalar normalde
|
||
<code>.htaccess</code> dosyaları olmakla birlikte <directive module="core"
|
||
>AccessFileName</directive> yönergesi kullanılarak rasgele bir isim
|
||
belirtilebilir. <code>.htaccess</code> dosyalarına yerleştirilen yönergeler
|
||
sadece dosyanın bulunduğu dizine ve alt dizinlerine uygulanır.
|
||
<code>.htaccess</code> dosyalarında da ana yapılandırma dosyalarında geçerli
|
||
sözdizimi kullanılır. <code>.htaccess</code> dosyaları her istek gelişinde
|
||
yeniden okunduğundan bu dosyalarda yapılan değişiklikler hemen etkisini
|
||
gösterir.</p>
|
||
|
||
<p><code>.htaccess</code> dosyalarına hangi yönergelerin
|
||
yerleştirilebileceğini bulmak için yönerge <a
|
||
href="mod/directive-dict.html#Context">bağlamına</a> bakınız.
|
||
Sunucunun yöneticisi <code>.htaccess</code> dosyalarına hangi yönergelerin
|
||
yerleştirilebileceğini ana yapılandırma dosyalarında
|
||
<directive module="core">AllowOverride</directive> yönergesini kullanarak
|
||
belirleyebilir.</p>
|
||
|
||
<p><code>.htaccess</code> dosyaları hakkında daha ayrıntılı bilgi edinmek
|
||
için <a href="howto/htaccess.html">.htaccess öğreticisi</a>ne bakabilirsiniz.</p>
|
||
</section>
|
||
</manualpage>
|