Apache HTTP Sunucusu Sürüm 2.5

Bu belge, mod_rewrite
başvuru belgelerini tamamlar.
İçeriği başka bir sunucuya vekil olarak iletmek için RewriteRule'un [P]
bayrağının nasıl kullanılacağını açıklar. Yaygın senaryoları anlatan
birkaç tarif sunulmuştur.
mod_rewrite, URL'lerin mod_proxy
aracılığıyla başka bir sunucuya iletilmesini sağlayan [P] bayrağını
sunar. Burada iki örnek verilmiştir. Birinde, bir URL doğrudan başka
bir sunucuya iletilir ve yerel bir URL gibi sunulur. Diğerinde,
eksik içeriği bir arka uç sunucusuna vekil olarak iletiriz.
Bir URL'yi başka bir sunucuya basitçe eşlemek için [P] bayrağını şu şekilde kullanırız:
RewriteEngine on RewriteBase "/products/" RewriteRule "^widget/(.*)$" "http://product.example.com/widget/$1" [P] ProxyPassReverse "/products/widget/" "http://product.example.com/widget/"
İkinci örnekte, isteği yalnızca kaynağı yerel olarak bulamadığımızda vekil olarak iletiriz. Bu, bir sunucudan diğerine geçiş yaparken ve tüm içeriğin taşınıp taşınmadığından emin olmadığınızda çok yararlı olabilir.
RewriteCond "%{REQUEST_FILENAME}" !-f
RewriteCond "%{REQUEST_FILENAME}" !-d
RewriteRule "^/(.*)" "http://old.example.com/$1" [P]
ProxyPassReverse "/" "http://old.example.com/"
Her iki durumda da, arka uç tarafından verilen
yönlendirmelerin istemciye doğru şekilde iletilmesini sağlamak
için bir ProxyPassReverse
yönergesi ekliyoruz.
Mümkün olduğunda mod_rewrite yerine ProxyPass veya ProxyPassMatch kullanmayı
değerlendirin.