Назад | Перейти на главную страницу

Каков правильный метод регистрации исходного домена в файлах журнала apache после перенаправления 301?

Спасибо, что прочитали мой вопрос.

Я использую Debian5 + apache2
В apache2.conf у меня есть несколько разделов VirtualHost.
У меня есть основной домен www.mymain.com в разделе виртуального хоста и несколько других доменов в другом разделе виртуального хоста.
Это позже имеет следующую команду перенаправления
перенаправить 301 / http://www.mymain.com

Все редиректы работают нормально.
Я хотел бы зарегистрировать исходный используемый домен, но пробовал каждую строку формата в http://httpd.apache.org/docs/2.3/mod/mod_log_config.html#formats но безрезультатно.

Я использовал все стандартные журналы и свой собственный (все в) журнал для обоих разделов VirtualHost, и необходимые данные не отображаются ни в одном из файлов журналов.

т.е. пользователь нажимает ссылку на www.myotherdomain.com, они успешно 301 перенаправляются apache на www.mymain.com

Я хотел бы увидеть
бла-бла www.myotherdomain.com бла-бла
в журнале

любой вклад приветствуется.

СОВЕТЫ для людей с аналогичной проблемой.

Большинство браузеров кешируют 301 редирект. Решением грубой силы является тестирование с использованием переносимой установки Firefox (например). Сделайте тесты, а затем удалите и переустановите приложение. Или просто скопируйте клон исходной установки в любое время, когда захотите провести тест.

остерегайтесь использования * .domain.tld в командах serveralias в apache2.conf

UseCanonicalName Off применяется, даже если все ваши серверные имена виртуальные

помните, что перенаправление 301 генерирует 2 полностью отдельных записи журнала, потому что это 2 полностью отдельных события, т.е.

browser requests www.myolddomain.tld -> server A returns 301 "command"
and
browser requests www.newdomain.tld (as listed in 301 cache) -> server B returns result

теоретически сервер B может не знать, что 301 произошел вообще

Конечно, если сервер A и B одинаковы, было бы очень полезно добавить информацию в журналы сервера B.

Похоже, вы хотите использовать CustomLog формат (для виртуального хоста, который отправляет перенаправление), который включает %Vи убедитесь, что вы установили UseCanonicalName Off.

Документация по формату журнала находится здесь.