Apache: Yönlendirme günlükleri nerede incelenir?


10

Karmaşık RewriteCondve RewriteRulebir makinede var. Ve bu kurallara göre, bazı talepler başka bir makineye yönlendirilecektir.

Yönlendirmenin nasıl gerçekleştiğini açıkça gösteren herhangi bir Apache günlüğü var mı? Çünkü yönlendirme, tahmin edemediğim şekilde gerçekleşiyor.

Yanıtlar:


9

Deneyimsiz olanlar için * .conf dosyanızı şöyle yazmalısınız:

  NameVirtualHost *:80
  <VirtualHost *:80 >
    ServerName gw.myserver.net
    DocumentRoot "C:\Program Files\MyCompany\myserver\Web"
    DirectoryIndex index.html index.php
    RewriteLog "logs\rewritelog.txt"
    RewriteLogLevel 3
    <Directory  "C:\Program Files\ MyCompany\ myserver\Web">
       AddDefaultCharset UTF-8
       Order Deny,Allow
       Allow from all

       RewriteEngine on
       RewriteBase /
       RewriteCond %{HTTP_HOST}   ^gw\. myserver\.net$
       RewriteRule !^(login|index.php)  http://pmmenu. myserver\.net%{REQUEST_URI}$1 [L,R=301]
       # we check if the .html version is here (caching)
       RewriteRule ^$ index.html [QSA]
       RewriteRule ^([^.]+)$ $1.html [QSA]
       RewriteCond %{REQUEST_FILENAME} !-f

       # no, so we redirect to our front web controller
       RewriteRule ^(.*)$ index.php [QSA,L]
    </Directory>
  </VirtualHost>

2
İyi yanıt - başlatılmamış, lütfen bir üretim sunucusunda 2'nin üzerindeki günlük düzeylerinin önemli performans yansımaları olabileceğini unutmayın.
cori

7
Daha yeni Apache sürümleri (en az 2.4 ve daha yeni) için RewriteLog / RewriteLogLevel artık çalışmaz. Yerini LogLevel yönergesi aldı: httpd.apache.org/docs/2.4/mod/mod_rewrite.html#logging
ronneseth


1

Bir günlük dosyasını özellikle yönerge Rewriteile işlenmek üzere yapılandırabilirsiniz RewriteLog. Günlüğe kaydetme miktarı ile seçilebilir RewriteLogLevel.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.