Как заставить Apache регистрировать определенные Redirect
s в отдельный файл журнала?
У меня есть веб-сайт, на котором есть ссылки на внешний сайт. Меня попросили отслеживать, как часто пользователи используют эти ссылки. Я могу изменить их все, чтобы они указывали на перенаправитель на моем сайте, и использовать Apache RedirectMatch
чтобы затем направить их в правильное место, но было бы проще, если бы эти конкретные перенаправления регистрировались в отдельном файле.
Спасибо!
Определите отдельный файл журнала, используемый, если есть переменная среды:
#Set your own file path and log file format
CustomLog /var/log/apache/redirects.log common env=redirected
Установите эту переменную рядом с каждым перенаправлением (RedirectMatch или mod_rewrite и т. Д.):
SetEnvIf Request_URI "^/site" redirected=1
RedirectMatch ^/site/(.*)$ http://target.example.com/$1
Вы также можете использовать SetEnv или mod_rewrite для установки переменных среды.
Один из способов - создать отдельный VirtualHost с собственным файлом access_log, например Если ваш домен www.example.com, вы настраиваете отдельный VirtualHost с DNS-именем redirect.example.com, и все ваши ссылки на внешние сайты проходят через этот хост и записываются в отдельный файл журнала этого хоста.