Apache: Di mana memeriksa log redirection?


10

Saya punya rumit RewriteConddan RewriteRuledalam satu mesin. Dan menurut aturan ini, beberapa permintaan akan dialihkan ke komputer lain.

Jadi apakah ada log Apache yang menunjukkan dengan jelas bagaimana pengalihan dilakukan? Karena pengalihan terjadi dengan cara yang tidak saya antisipasi.

Jawaban:


9

Untuk yang belum tahu, beginilah cara Anda menulis file * .conf Anda:

  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
Jawaban yang bagus - belum diinisiasi, harap diingat bahwa level log di atas 2 pada server produksi dapat memiliki dampak kinerja yang substansial.
cori

7
Untuk versi Apache yang lebih baru (setidaknya 2,4 dan lebih baru), RewriteLog / RewriteLogLevel tidak lagi berfungsi. Itu telah digantikan oleh arahan LogLevel: httpd.apache.org/docs/2.4/mod/mod_rewrite.html#logging
ronneseth


1

Anda dapat mengonfigurasi file log khusus untuk Rewritediproses dengan RewriteLogarahan. Jumlah logging dapat dipilih dengan RewriteLogLevel.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.