У нас є один сервер, який розміщує багато різних доменів. Оскільки цей сервер припиняється, ми хочемо знати, чи є домени, що вказують на цей сервер. Я хотів би, щоб журнали Apache повідомили про ці доменні імена.
У наших журналах Apache відображаються такі дані:
163.172.66.133 - - [16 / груд. 2016: 11: 37: 40 +0100] "GET / en / page / test HTTP / 1.1" 301 - "-" "Mozilla / 5.0 (сумісний; AhrefsBot / 5.1; + http : //ahrefs.com/robot/ ) "
Він повинен бути з повним доменним іменем сторінки, на яку запитується.
163.172.66.133 - - [16 / груд. 2016: 11: 37: 40 +0100] "GET https: // www.domainname.com / en / page / test HTTP / 1.1" 301 - "-" "Mozilla / 5.0 (сумісно; AhrefsBot / 5.1; + http://ahrefs.com/robot/ ) "
Я використовую такий LogFormat:
LogFormat "%h %l %u %t \"%m http://%v:%p%U\" %>s %b" common
Іноді я бачу повне доменне ім’я, більшість часу - ні.
Як я можу постійно показувати доменні імена?
%v
ваш LogFormat
, ви впевнені, що це ваше єдине визначення у всіх конфігураціях хоста? Погляньте на це питання: Використання% v у визначенні Apache LogFormat відповідає ServerName замість конкретного запиту vhost, це може запропонувати ви можете також використовувати, %{Host}
що може дати вам інформацію, яку ви шукаєте?
%{Host}
генерує?
%v
або%V
.