1<?xml version="1.0" encoding="UTF-8"?> 2<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 3<html xmlns="http://www.w3.org/1999/xhtml" lang="tr" xml:lang="tr"><head><!-- 4 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX 5 This file is generated from xml source: DO NOT EDIT 6 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX 7 --> 8<title>URL’lerin Dosya Sistemi ile Eşleştirilmesi - Apache HTTP Sunucusu</title> 9<link href="/style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" /> 10<link href="/style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" /> 11<link href="/style/css/manual-print.css" rel="stylesheet" media="print" type="text/css" /><link rel="stylesheet" type="text/css" href="/style/css/prettify.css" /> 12<script src="/style/scripts/prettify.min.js" type="text/javascript"> 13</script> 14 15<link href="/images/favicon.ico" rel="shortcut icon" /></head> 16<body id="manual-page"><div id="page-header"> 17<p class="menu"><a href="/mod/">Modüller</a> | <a href="/mod/directives.html">Yönergeler</a> | <a href="http://wiki.apache.org/httpd/FAQ">SSS</a> | <a href="/glossary.html">Terimler</a> | <a href="/sitemap.html">Site Haritası</a></p> 18<p class="apache">Apache HTTP Sunucusu Sürüm 2.4</p> 19<img alt="" src="/images/feather.gif" /></div> 20<div class="up"><a href="./"><img title="<-" alt="<-" src="/images/left.gif" /></a></div> 21<div id="path"> 22<a href="http://www.apache.org/">Apache</a> > <a href="http://httpd.apache.org/">HTTP Sunucusu</a> > <a href="http://httpd.apache.org/docs/">Belgeleme</a> > <a href="./">Sürüm 2.4</a></div><div id="page-content"><div id="preamble"><h1>URL’lerin Dosya Sistemi ile Eşleştirilmesi</h1> 23<div class="toplang"> 24<p><span>Mevcut Diller: </span><a href="/en/urlmapping.html" hreflang="en" rel="alternate" title="English"> en </a> | 25<a href="/fr/urlmapping.html" hreflang="fr" rel="alternate" title="Français"> fr </a> | 26<a href="/ja/urlmapping.html" hreflang="ja" rel="alternate" title="Japanese"> ja </a> | 27<a href="/ko/urlmapping.html" hreflang="ko" rel="alternate" title="Korean"> ko </a> | 28<a href="/tr/urlmapping.html" title="Türkçe"> tr </a></p> 29</div> 30 31 <p>Bu belgede, bir istekte belirtilen URL’nin sunulacak dosyanın dosya 32 sistemindeki yerini bulmak için Apache HTTP Sunucusu tarafından nasıl 33 kullanıldığı açıklanmaktadır.</p> 34 </div> 35<div id="quickview"><ul id="toc"><li><img alt="" src="/images/down.gif" /> <a href="#related">İlgili Modüller ve Yönergeler</a></li> 36<li><img alt="" src="/images/down.gif" /> <a href="#documentroot"><code>DocumentRoot</code></a></li> 37<li><img alt="" src="/images/down.gif" /> <a href="#outside">Belge Kök Dizini Dışındaki Dosyalar</a></li> 38<li><img alt="" src="/images/down.gif" /> <a href="#user">Kullanıcı Dizinleri</a></li> 39<li><img alt="" src="/images/down.gif" /> <a href="#redirect">URL Yönlendirme</a></li> 40<li><img alt="" src="/images/down.gif" /> <a href="#proxy">Karşı Vekil</a></li> 41<li><img alt="" src="/images/down.gif" /> <a href="#rewrite">Yeniden Yazma Motoru</a></li> 42<li><img alt="" src="/images/down.gif" /> <a href="#notfound">Dosya orada yok</a></li> 43<li><img alt="" src="/images/down.gif" /> <a href="#other">Diğer URL Eşleme Modülleri</a></li> 44</ul><ul class="seealso"><li><a href="#comments_section">Yorum</a></li></ul></div> 45<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div> 46<div class="section"> 47<h2><a name="related" id="related">İlgili Modüller ve Yönergeler</a></h2> 48 49<table class="related"><tr><th>İlgili Modüller</th><th>İlgili Yönergeler</th></tr><tr><td><ul><li><code class="module"><a href="/mod/mod_actions.html">mod_actions</a></code></li><li><code class="module"><a href="/mod/mod_alias.html">mod_alias</a></code></li><li><code class="module"><a href="/mod/mod_autoindex.html">mod_autoindex</a></code></li><li><code class="module"><a href="/mod/mod_dir.html">mod_dir</a></code></li><li><code class="module"><a href="/mod/mod_imagemap.html">mod_imagemap</a></code></li><li><code class="module"><a href="/mod/mod_negotiation.html">mod_negotiation</a></code></li><li><code class="module"><a href="/mod/mod_proxy.html">mod_proxy</a></code></li><li><code class="module"><a href="/mod/mod_rewrite.html">mod_rewrite</a></code></li><li><code class="module"><a href="/mod/mod_speling.html">mod_speling</a></code></li><li><code class="module"><a href="/mod/mod_userdir.html">mod_userdir</a></code></li><li><code class="module"><a href="/mod/mod_vhost_alias.html">mod_vhost_alias</a></code></li></ul></td><td><ul><li><code class="directive"><a href="/mod/mod_alias.html#alias">Alias</a></code></li><li><code class="directive"><a href="/mod/mod_alias.html#aliasmatch">AliasMatch</a></code></li><li><code class="directive"><a href="/mod/mod_speling.html#checkspelling">CheckSpelling</a></code></li><li><code class="directive"><a href="/mod/mod_dir.html#directoryindex">DirectoryIndex</a></code></li><li><code class="directive"><a href="/mod/core.html#documentroot">DocumentRoot</a></code></li><li><code class="directive"><a href="/mod/core.html#errordocument">ErrorDocument</a></code></li><li><code class="directive"><a href="/mod/core.html#options">Options</a></code></li><li><code class="directive"><a href="/mod/mod_proxy.html#proxypass">ProxyPass</a></code></li><li><code class="directive"><a href="/mod/mod_proxy.html#proxypassreverse">ProxyPassReverse</a></code></li><li><code class="directive"><a href="/mod/mod_proxy.html#proxypassreversecookiedomain">ProxyPassReverseCookieDomain</a></code></li><li><code class="directive"><a href="/mod/mod_proxy.html#proxypassreversecookiepath">ProxyPassReverseCookiePath</a></code></li><li><code class="directive"><a href="/mod/mod_alias.html#redirect">Redirect</a></code></li><li><code class="directive"><a href="/mod/mod_alias.html#redirectmatch">RedirectMatch</a></code></li><li><code class="directive"><a href="/mod/mod_rewrite.html#rewritecond">RewriteCond</a></code></li><li><code class="directive"><a href="/mod/mod_rewrite.html#rewriterule">RewriteRule</a></code></li><li><code class="directive"><a href="/mod/mod_alias.html#scriptalias">ScriptAlias</a></code></li><li><code class="directive"><a href="/mod/mod_alias.html#scriptaliasmatch">ScriptAliasMatch</a></code></li><li><code class="directive"><a href="/mod/mod_userdir.html#userdir">UserDir</a></code></li></ul></td></tr></table> 50</div><div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div> 51<div class="section"> 52<h2><a name="documentroot" id="documentroot"><code>DocumentRoot</code></a></h2> 53 54 <p>Yapılan bir isteğe hangi dosyanın sunulacağına karar verirken 55 httpd’nin öntanımlı davranışı istek için URL yolunu (URL’den konak ismi 56 ve port ayrıldıktan sonra kalan kısım) alıp bunu yapılandırma dosyasında 57 <code class="directive"><a href="/mod/core.html#documentroot">DocumentRoot</a></code> yönergesi ile 58 belirtilen dizinin sonuna eklemektir. Bu nedenle, <code class="directive"><a href="/mod/core.html#documentroot">DocumentRoot</a></code> altındaki dizinler ve dosyalar 59 sitenin dışardan görünen temel belge ağacını oluştururlar.</p> 60 61 <p>Örneğin, <code class="directive"><a href="/mod/core.html#documentroot">DocumentRoot</a></code> yönergesine 62 <code>/var/http/html</code> atanmış olsun. 63 <code>http://example.com/balıklar/zargana.html</code> şeklindeki bir 64 istek için istemciye <code>/var/http/html/balıklar/zargana.html</code> 65 dosyası sunulur.</p> 66 67 <p>Bir dizin istenirse (<code>/</code> ile biten bir yol belirtilmesi 68 durumu), sunulacak dosya <code class="directive"><a href="/mod/mod_dir.html#directoryindex">DirectoryIndex</a></code> yönergesinde belirtilen dosya olacaktır. 69 Örneğin, <code>DocumentRoot</code> yukarıdaki gibi belirtimiş ve siz de 70 şunu belirtmişseniz:</p> 71 72 <div class="example"><p><code>DirectoryIndex index.html index.php</code></p></div> 73 74 <p><code>http://www.example.com/fish/</code> isteği, httpd'nin 75 <code>/var/www/html/fish/index.html</code> dosyasını sunmaya, bu dosya 76 bulunmuyorsa <code>/var/www/html/fish/index.php</code> dosyasını sunmaya 77 çalışmasına sebep olacaktır.</p> 78 79 <p>Bu dosyaların ikisi de bulunmuyorsa sonraki adım, 80 <code class="module"><a href="/mod/mod_autoindex.html">mod_autoindex</a></code> yüklü ve uygun şekilde yapılandırılmışsa 81 bir dizin içeriği dosyası sağlamaya çalışmak olacaktır.</p> 82 83 <p>httpd ayrıca, sunucunun birden fazla konak için istek kabul etmesini 84 sağlayan <a href="vhosts/">sanal barındırmaya</a> da muktedirdir. Bu 85 durumda her sanal konak için ayrı bir <code class="directive"><a href="/mod/core.html#documentroot">DocumentRoot</a></code> belirtilebileceği gibi sunulacak içeriğin 86 istekte bulunulan IP adresi veya konak ismine dayanarak devingen olarak 87 saptanmasını sağlayabilen <code class="module"><a href="/mod/mod_vhost_alias.html">mod_vhost_alias</a></code> modülüyle 88 gelen yönergeler de kullanılabilir.</p> 89 90 <p><code class="directive"><a href="/mod/core.html#documentroot">DocumentRoot</a></code> yönergesi 91 yapılandırma dosyanızda ana sunucu için bir tane ve muhtemelen 92 oluşturduğunuz her <a href="vhosts/">sanal konak</a> için de birer 93 tanedir.</p> 94</div><div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div> 95<div class="section"> 96<h2><a name="outside" id="outside">Belge Kök Dizini Dışındaki Dosyalar</a></h2> 97 98 <p>Bazen dosya sisteminde doğrudan <code class="directive"><a href="/mod/core.html#documentroot">DocumentRoot</a></code> altında bulunmayan dosyalara da erişim izni 99 vermek gerekir. httpd’de bunu sağlamanın çeşitli yolları vardır. Unix 100 sistemlerinde sembolik bağlar sayesinde dosya sisteminin farklı 101 yerlerindeki dosyaları ve dizinleri <code class="directive"><a href="/mod/core.html#documentroot">DocumentRoot</a></code> altındaymış gibi göstermek mümkündür. 102 <code class="directive"><a href="/mod/core.html#options">Options</a></code> yönergesine değer olarak 103 <code>FollowSymLinks</code> veya <code>SymLinksIfOwnerMatch</code> 104 atanmadıkça httpd olası güvenlik açıklarına karşı öntanımlı olarak 105 sembolik bağları izlemez.</p> 106 107 <p>Bundan başka, dosya sisteminin farklı parçalarını belge kök dizini 108 altında göstermek için <code class="directive"><a href="/mod/mod_alias.html#alias">Alias</a></code> 109 yönergesi de kullanılabilir. Örneğin,</p> 110 111 <pre class="prettyprint lang-config">Alias /belgeler /var/http</pre> 112 113 114 <p>yapılandırması ile 115 <code>http://example.com/belgeler/dizin/dosya.html</code> URL’si için 116 dosya sistemindeki <code>/var/http/dizin/dosya.html</code> dosyası 117 sunulacaktır. Hedef dizindeki dosyaları birer <a class="glossarylink" href="/glossary.html#cgi" title="sözlüğe bakınız">CGI</a> betiği olarak imlemesi dışında <code class="directive"><a href="/mod/mod_alias.html#scriptalias">ScriptAlias</a></code> yönergesi de aynı şekilde 118 çalışır.</p> 119 120 <p>Biraz daha fazla esnekliğin gerektiği durumlarda <a class="glossarylink" href="/glossary.html#regex" title="sözlüğe bakınız">düzenli ifadelere</a> dayalı eşleşmeler sağlamak 121 üzere <code class="directive"><a href="/mod/mod_alias.html#aliasmatch">AliasMatch</a></code> ve <code class="directive"><a href="/mod/mod_alias.html#scriptaliasmatch">ScriptAliasMatch</a></code> yönergelerinin gücünden 122 yararlanılabilir. Örneğin,</p> 123 124 <pre class="prettyprint lang-config">ScriptAliasMatch ^/~([a-zA-Z0-9]+)/cgi-bin/(.+) /home/$1/cgi-bin/$2</pre> 125 126 127 <p>satırı sayesinde <code>http://example.com/~user/cgi-bin/betik.cgi</code> 128 URL’si <code>/home/user/cgi-bin/betik.cgi</code> dosyası ile 129 eşleştirilir ve dosya bir CGI betiği olarak çalıştırılırdı.</p> 130</div><div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div> 131<div class="section"> 132<h2><a name="user" id="user">Kullanıcı Dizinleri</a></h2> 133 134 <p>Geleneksel olarak Unix sistemlerinde belli bir kullanıcının (örn, 135 <em>birisi</em>) ev dizinine <code>~birisi/</code> şeklinde atıfta 136 bulunulabilir. <code class="module"><a href="/mod/mod_userdir.html">mod_userdir</a></code> modülü bu özelliği site 137 üzerinden kullanıcıların ev dizinlerindeki dosyaları kişisel sayfalar 138 olarak sunmalarını sağlamak üzere kullanır. Örnek:</p> 139 140 <div class="example"><p><code>http://example.com/~birisi/dosya.html</code></p></div> 141 142 <p>Güvenlik sebebiyle kullanıcıların ev dizinlerine doğrudan HTTP erişimi 143 vermek uygun olmaz. Bu bakımdan, kullanıcının ev dizini altında HTTP 144 erişimi verilecek dosyaların bulunduğu dizini belirtmek için <code class="directive"><a href="/mod/mod_userdir.html#userdir">UserDir</a></code> yönergesi sağlanmıştır. 145 Öntanımlı olan <code>Userdir public_html</code> yapılandırması ile 146 yukarıdaki gibi bir URL kullanıcının ev dizini (<code>/etc/passwd</code> 147 dosyasında belirtilir) <code>/home/birisi/</code> altında yer alan 148 <code>/home/birisi/public_html/dosya.html</code> dosyası ile 149 eşleşirdi.</p> 150 151 <p>Ev dizininin yerinin <code>/etc/passwd</code> dosyasında belirtilmediği 152 sistemlerde kullanılmak üzere <code>Userdir</code> yönergesinin başka 153 kullanım şekilleri de vardır.</p> 154 155 <p>Bazı kişiler (genellikle URL üzerinde <code>%7e</code> olarak 156 kodlanması sebebiyle) "~" simgesini biçimsiz bulabilir ve kullanıcı 157 dizinlerini imlemek için başka bir karakter kullanmayı tercih 158 edebilirler. Bu işlevsellik <code class="module"><a href="/mod/mod_userdir.html">mod_userdir</a></code> tarafından 159 desteklenmemektedir. Ancak, kullanıcı dizinleri düzgün şekilde 160 yapılandırılmışsa istenen etki <code class="directive"><a href="/mod/mod_alias.html#aliasmatch">AliasMatch</a></code> yönergesi ile sağlanabilir. 161 Örneğin, <code>http://example.com/sayfalar/birisi/dosya.html</code> 162 URL’si ile <code>/home/birisi/public_html/dosya.html</code> dosyasını 163 eşlemek için <code>AliasMatch</code> yönergesi şöyle 164 kullanılabilirdi:</p> 165 166 <pre class="prettyprint lang-config">AliasMatch ^/sayfalar/([a-zA-Z0-9]+)(/(.*))?$ /home/$1/public_html/$3</pre> 167 168</div><div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div> 169<div class="section"> 170<h2><a name="redirect" id="redirect">URL Yönlendirme</a></h2> 171 172 <p>Yukarıdaki bölümlerde açıklanan yapılandırma yönergeleri httpd’ye 173 içeriği dosya sisteminin belli bir yerinden alıp istemciye göndermesini 174 söyler. Bazen istemciye, istediği içeriğe farklı bir URL ile 175 erişebileceğini ve bu URL için ayrı bir istek yapması gerektiğini 176 bildirmek gerekir. Bu işleme <em>yönlendirme</em> adı verilir ve bu 177 işlevsellik <code class="directive"><a href="/mod/mod_alias.html#redirect">Redirect</a></code> yönergesi 178 ile sağlanır. Örneğin, <code class="directive"><a href="/mod/core.html#documentroot">DocumentRoot</a></code> 179 altındaki <code>/foo/</code> dizininin içeriğinin <code>/bar/</code> 180 adında yeni bir dizine taşınması halinde istemciye yeni konumun 181 bildirilmesi şöyle sağlanabilirdi:</p> 182 183 <pre class="prettyprint lang-config">Redirect permanent /foo/ http://example.com/bar/</pre> 184 185 186 <p>Bu atama sayesinde <code>/foo/</code> ile başlayan URL yolları 187 <code>example.com</code> sunucundaki <code>/bar/</code> dizini altındaki 188 içeriğe yönlendirilmektedir. Yönlendirmeyi aynı sunucu üzerinde yapmak 189 zorunda değilsiniz, bu yönerge ile başka bir sunucuya da yönlendirme 190 yapabilirsiniz.</p> 191 192 <p>httpd ayrıca, yeniden yazma ile ilgili daha karmaşık sorunlara çözüm 193 olarak <code class="directive"><a href="/mod/mod_alias.html#redirectmatch">RedirectMatch</a></code> diye bir 194 yönerge daha sağlar. Örneğin bir sitenin baş sayfasını diğer isteklerden 195 ayrı olarak farklı bir siteye yönlendirmek için yönergeyi şöyle 196 kullanabilirsiniz:</p> 197 198 <pre class="prettyprint lang-config">RedirectMatch permanent ^/$ http://example.com/ilksayfa.html</pre> 199 200 201 <p>Bundan başka, bir sitedeki tüm sayfalara yapılan istekleri başka bir 202 siteye geçici olarak yönlendirmek için şöyle bir şey yapabilirsiniz:</p> 203 204 <pre class="prettyprint lang-config">RedirectMatch temp .* http://mesela.example.com/ilksayfa.html</pre> 205 206</div><div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div> 207<div class="section"> 208<h2><a name="proxy" id="proxy">Karşı Vekil</a></h2> 209 210 <p>httpd ayrıca, uzak sunuculardaki belgelerin yerel sunucunun URL 211 alanına getirilmesini de mümkün kılar. Bu tekniğe HTTP sunucunun 212 belgeleri uzak bir sunucudan alıp istemciye sunmasını sağlayarak bir 213 vekil sunucu gibi davranması nedeniyle <em>ters vekalet</em> adı 214 verilir. Belgelerin istemciye özkaynağın bulunduğu sunucudan 215 geliyormuş gibi değilde doğrudan isteği yaptığı sunucudan geliyormuş 216 gibi sunulması nedeniyle bu işlem normal vekaletten farklıdır.</p> 217 218 <p>Aşağıdaki örnekte, istemci <code>/foo/</code> dizini altından bir belge 219 istemekte, sunucu ise bu belgeyi <code>dahili.example.com</code> 220 üzerindeki <code>/bar/</code> dizininden alıp istemciye yerel sunucudan 221 geliyormuş gibi sunmaktadır:</p> 222 223 <pre class="prettyprint lang-config">ProxyPass /foo/ http://dahili.example.com/bar/ 224ProxyPassReverse /foo/ http://dahili.example.com/bar/ 225ProxyPassReverseCookieDomain dahili.example.com harici.example.com 226ProxyPassReverseCookiePath /foo/ /bar/</pre> 227 228 229 <p><code class="directive"><a href="/mod/mod_proxy.html#proxypass">ProxyPass</a></code> sunucuyu uygun 230 belgeleri alması için yapılandırırken <code class="directive"><a href="/mod/mod_proxy.html#proxypassreverse">ProxyPassReverse</a></code> yönergesi <code>dahili.example.com</code> 231 sunucusundan kaynaklanan yönlendirmeleri yeniden yazar, böylece bunların 232 yerel sunucudaki yerleri belirlenmiş olur. Benzer şekilde, <code class="directive"><a href="/mod/mod_proxy.html#proxypassreversecookiedomain">ProxyPassReverseCookieDomain</a></code> ve 233 <code class="directive"><a href="/mod/mod_proxy.html#proxypassreversecookiepath">ProxyPassReverseCookiePath</a></code> 234 yönergeleri de arka sunucu tarafından atanan çerezleri yeniden yazar.</p> 235 236 <p>Yalnız, belgelerin içindeki hiperbağların yeniden yazılmayacağına 237 dikkat ediniz. Dolayısıyla, belge içinde 238 <code>dahili.example.com</code>’u ismiyle hedef alan mutlak hiperbağlar 239 varsa bunlar istemci tarafından vekil sunucudan değil doğrudan 240 <code>dahili.example.com</code>’dan istenecektir. Bir sayfanın içindeki bu 241 bağları (ve diğer içeriği) <code class="module"><a href="/mod/mod_substitute.html">mod_substitute</a></code> modülü 242 kullanılarak istemciye sunuluyormuşçasına değiştirebilirsiniz.</p> 243 244 <pre class="prettyprint lang-config">Substitute s/dahili\.example\.com/harici.example.com/i</pre> 245 246 247 <p>HTML ve XHTML’de hiperbağları daha bilgece yeniden yazabilen 248 <code class="module"><a href="/mod/mod_proxy_html.html">mod_proxy_html</a></code> modülü de kullanılabilir. Yeniden 249 yazılması gereken URL eşlemlerini oluşturmanızı sağlar, böylece karmaşık 250 vekil senaryoları oluşturulabilir.</p> 251</div><div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div> 252<div class="section"> 253<h2><a name="rewrite" id="rewrite">Yeniden Yazma Motoru</a></h2> 254 255 <p>Daha güçlü ikameler gerektiğinde <code class="module"><a href="/mod/mod_rewrite.html">mod_rewrite</a></code> modülü 256 tarafından sağlanan yeniden yazma motoru işe yarayabilir. Bu modüldeki 257 yönergeler sunulacak içeriğin yerine karar vermek için kaynak IP adresi, 258 tarayıcı türü gibi isteğe özgü özellikleri kullanırlar. 259 <code class="module"><a href="/mod/mod_rewrite.html">mod_rewrite</a></code> modülü buna ek olarak isteğin nasıl ele 260 alınacağına karar vermek için harici yazılımları ve veritabanlarını 261 kullanabilir. Yeniden yazma motoru yukarıda değinilen üç eşleşme türünü 262 de uygulayabilecek yetenektedir: Dahili yönlendirmeler (rumuzlar), 263 harici yönlendirmeler ve vekalet. <code class="module"><a href="/mod/mod_rewrite.html">mod_rewrite</a></code> modülü 264 tarafından sağlanan yeteneklerin ayrıntılı açıklamaları ve bunların 265 kullanım örnekleri ayrıntılı olarak <a href="rewrite/">mod_rewrite 266 belgeleri</a>nde bulunmaktadır.</p> 267</div><div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div> 268<div class="section"> 269<h2><a name="notfound" id="notfound">Dosya orada yok</a></h2> 270 271 <p>Kaçınılmaz olarak, dosya sisteminde mevcut olmayan dosyalar için de 272 istek yapılacaktır. Bunun çeşitli sebepleri olabilir. Bazı durumlarda 273 bu, belgelerin yerlerininin değiştirilmesinin bir sonucu olabilir. Bu 274 durumda yapılacak en iyi şey, istemciyi belgeyi yeni yerinden istemesi 275 için bilgilendirmek amacıyla <a href="#redirect">URL yönlendirmesi</a> 276 kullanmaktır. Bu şekilde, içeriğin yeri değişse bile eski yer imlerinin 277 ve hiperbağların çalışmaya devam edeceklerinden emin olabilirsiniz.</p> 278 279 <p>"Dosya orada yok" ("File Not Found") hatalarının diğer bir bildik 280 sebebi de URL’lerin hiperbağlarda veya doğrudan tarayıcıda kasıtlı ya da 281 kasıtsız, yanlış yazılmasıdır. Bu tür sorunlarda yardımcı olması için 282 httpd <code class="module"><a href="/mod/mod_speling.html">mod_speling</a></code> (sic) adında bir modülle gelir. Bu 283 modül etkin kılındığında htpd, "Dosya orada yok" ("File Not Found") 284 hatalarının önünü kesip başka bir yerde benzer isimde bir dosya var mı 285 diye bakar. Böyle bir dosya varsa, <code class="module"><a href="/mod/mod_speling.html">mod_speling</a></code> 286 istemciye dosyanın doğru yerini bildiren bir HTTP yönlendirmesi yollar. 287 Benzer çok sayıda dosya varsa bunlar istemciye bir liste halinde 288 sunulur.</p> 289 290 <p><code class="module"><a href="/mod/mod_speling.html">mod_speling</a></code> modülünün en yararlı özelliklerinden biri 291 de dosya isimlerini harf büyüklüğüne duyarsız olarak arayabilmesidir. 292 Dosya isimlerinde harf büyüklüğünün önemli olduğu Unix benzeri sistemler 293 hakkında bilgisi olmayan kullanıcılara sahip sistemlerin kullanıcılarına 294 bu büyük yarar sağlar. Fakat modülün URL düzeltmekten başka şeyler için 295 de kullanılması, istemcilerden gelen neredeyse her isteğin URL 296 yönlendirmesine konu olmasına sebep olarak sunucunun yükünü 297 arttırabilir.</p> 298 299 <p><code class="module"><a href="/mod/mod_dir.html">mod_dir</a></code> modülü sanal URI'leri, onları sunan gerçek 300 kaynağa eşlemekte kullanılan <code class="directive"><a href="/mod/mod_dir.html#fallbackresource">FallbackResource</a></code> yönergesini içerir. Bir 'ön denetleyici' 301 gerçeklerken <code class="module"><a href="/mod/mod_rewrite.html">mod_rewrite</a></code> modülünün kullanılmasını 302 sağlamak için çok kullanışlıdır.</p> 303 304 <p>Yerinde bulunmayan içeriğin bulunması çabalarının tümü Apache’nin 404 305 (Dosya orada yok) HTTP durum kodlu bir hata sayfası döndürmesine yol 306 açar. Bu sayfanın içeriği <code class="directive"><a href="/mod/core.html#errordocument">ErrorDocument</a></code> yönergesi ile denetlenebilir ve <a href="custom-error.html">Hata Yanıtlarının Kişiselleştirilmesi</a> 307 bölümünde anlatıldığı gibi oldukça esnek bir şekilde 308 kişiselleştirilebilir.</p> 309</div><div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div> 310<div class="section"> 311<h2><a name="other" id="other">Diğer URL Eşleme Modülleri</a></h2> 312 313 314 315 <p>URL eşlemede kullanılabilecek diğer modüller:</p> 316 317 <ul> 318 <li><code class="module"><a href="/mod/mod_actions.html">mod_actions</a></code> - Bir isteği, özkaynağın MIME türüne veya 319 istek yöntemine bakarak bir CGI betiğine eşler.</li> 320 321 <li><code class="module"><a href="/mod/mod_dir.html">mod_dir</a></code> - URL'yi sonlandıran bölü çizgisini 322 <code>index.html</code> bir dosyaya eşler.</li> 323 324 <li><code class="module"><a href="/mod/mod_imagemap.html">mod_imagemap</a></code> - Bir isteği, bir HTML belge içindeki 325 bir resme yapılan kullanıcı tıklamalarına dayanarak bir URL'ye 326 eşler.</li> 327 328 <li><code class="module"><a href="/mod/mod_negotiation.html">mod_negotiation</a></code> - Dil veya içerik sıkıştırması gibi 329 kullanıcı tercihlerine dayanarak uygun bir belgeyi seçer.</li> 330 </ul> 331 332</div></div> 333<div class="bottomlang"> 334<p><span>Mevcut Diller: </span><a href="/en/urlmapping.html" hreflang="en" rel="alternate" title="English"> en </a> | 335<a href="/fr/urlmapping.html" hreflang="fr" rel="alternate" title="Français"> fr </a> | 336<a href="/ja/urlmapping.html" hreflang="ja" rel="alternate" title="Japanese"> ja </a> | 337<a href="/ko/urlmapping.html" hreflang="ko" rel="alternate" title="Korean"> ko </a> | 338<a href="/tr/urlmapping.html" title="Türkçe"> tr </a></p> 339</div><div class="top"><a href="#page-header"><img src="/images/up.gif" alt="top" /></a></div><div class="section"><h2><a id="comments_section" name="comments_section">Yorum</a></h2><div class="warning"><strong>Notice:</strong><br />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 <a href="http://httpd.apache.org/lists.html">mailing lists</a>.</div> 340<script type="text/javascript"><!--//--><![CDATA[//><!-- 341var comments_shortname = 'httpd'; 342var comments_identifier = 'http://httpd.apache.org/docs/2.4/urlmapping.html'; 343(function(w, d) { 344 if (w.location.hostname.toLowerCase() == "httpd.apache.org") { 345 d.write('<div id="comments_thread"><\/div>'); 346 var s = d.createElement('script'); 347 s.type = 'text/javascript'; 348 s.async = true; 349 s.src = 'https://comments.apache.org/show_comments.lua?site=' + comments_shortname + '&page=' + comments_identifier; 350 (d.getElementsByTagName('head')[0] || d.getElementsByTagName('body')[0]).appendChild(s); 351 } 352 else { 353 d.write('<div id="comments_thread">Comments are disabled for this page at the moment.<\/div>'); 354 } 355})(window, document); 356//--><!]]></script></div><div id="footer"> 357<p class="apache">Copyright 2014 The Apache Software Foundation.<br /><a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a> altında lisanslıdır.</p> 358<p class="menu"><a href="/mod/">Modüller</a> | <a href="/mod/directives.html">Yönergeler</a> | <a href="http://wiki.apache.org/httpd/FAQ">SSS</a> | <a href="/glossary.html">Terimler</a> | <a href="/sitemap.html">Site Haritası</a></p></div><script type="text/javascript"><!--//--><![CDATA[//><!-- 359if (typeof(prettyPrint) !== 'undefined') { 360 prettyPrint(); 361} 362//--><!]]></script> 363</body></html>