@pcdesign

Можно ли глобально запретить логирование картинок?

server {
    listen  80;
	server_name  example.ru; 
	location ~* \.(js|css|png|jpg|jpeg|gif|ico)$ {
		access_log        off;
	}


Для каждого сервера приходится прописывать отключение логирования статики.
Есть ли возможность это сделать как-нибудь глобально?
  • Вопрос задан
  • 212 просмотров
Решения вопроса 2
castomi
@castomi
Серверный администратор - tickets.settin.ru
Можно не прописывать в каждом. Создаёте файлик в нём прописываете общие для всех виртуальных хостов настройки. И далее в каждый виртуальных хост прописываете.
include /etc/nginx/site.conf;
Профит)) А ещё можно вообще сделать всего один виртуальный хост который будет универсален для всех сайтов.
server {
    server_name   ~^(www\.)?(?<domain>.+)$;

    location / {
        root   /sites/$domain;
    }

тут $host берётся как переменная и в соответствии с этим именем выбирается папка. То так же через переменные можно запихнуть и всё остальное. Если нужна помощь, обращайтесь)
Ответ написан
Комментировать
Assargin
@Assargin
Перед ответом смотрю наличие ✔ в ваших вопросах
Попробуйте поиграться с map и access_log в контексте http, а не server.
В документации к директиве access_log есть такой пример:
map $status $loggable {
    ~^[23]  0;
    default 1;
}

access_log /path/to/access.log combined if=$loggable;

Возможно, получится добиться условного логирования в зависимости от переменной $uri
P.S.: if в access_log появился в nginx, начиная с версии 1.7.0
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы