- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Как удалить плохие SEO-ссылки и очистить ссылочную массу сайта
Применяем отклонение ссылок
Сервис Rookee
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Началось с того, что сайт показал плачевные результаты в PageSpeed Insights, потребовалось сжатие, установил nginx, сжатие работает, но настройки кэширования из .htaccess сводит на нет.
Весь день пробую разные конфиги, но так и не продвинулся с кэшированием.
location ~* \.(jpg|jpeg|gif|png)$ {
expires 720h;
add_header Cache-Control "public, max-age=2592000";
}
По идее в Header у картинок должна появиться запись Cache-Control, но её нет
Вот всё что выдаёт:
HTTP/1.1 304 Not Modified
Server: nginx
Date: Mon, 12 Jan 2015 20:39:24 GMT
Last-Modified: Tue, 28 Oct 2014 15:18:53 GMT
Connection: keep-alive
ETag: "544fb3dd-5015"
Перепробовал разные конфиги, за основу оставил из этого видео
Весь файл nginx.conf выкладывать сюда не буду, выложу по ссылке.
Если, кто найдет решение, неделю покручу рекламу на сайте в качестве благодарности.
X-whisper, оставьте только expires 720h; он как раз и делает этот хедер. Уберите add_header Cache-Control "public, max-age=2592000";
к примеру у меня есть в конфиге expires 7d;
а хедеры выглядят так:
Date: Mon, 12 Jan 2015 21:39:34 GMT
Content-Type: image/jpeg
Content-Length: 46641
Last-Modified: Tue, 08 Jul 2014 12:22:34 GMT
Connection: keep-alive
Etag: "53bbe28a-b631"
Expires: Mon, 19 Jan 2015 21:39:34 GMT
Cache-Control: max-age=604800
Accept-Ranges: bytes
200 OK
Так nginx и не будет отдавать Cache-Control по вашему конфигу, потому что он их просто не обрабатывает.
А если быть точнее, в Вашем конфиге он забирает статику у Apache.
В локации должно быть указан proxy_pass до сервера с картинками (до корня сайта) или директивой root, если файлы лежат локально.
Тогда nginx будет знать где лежат статические файлы, чтобы самому их забрать.
То есть так:
или так:
lealhost, вообще-то директивы наследуются с верхнего уровня, если свои отсутствуют.
lealhost, вообще-то директивы наследуются с верхнего уровня, если свои отсутствуют.
Думаю наследуются только если локейшн вложенный.
У Вас вообще нет директивы root. Это точно весь конфиг?
Ошибку выдаёт
2015/01/13 02:17:05 [emerg] 20913#0: "proxy_pass" cannot have URI part in location given by regular expression, or inside named location, or inside "if" statement, or inside "limit_except" block in /etc/nginx/nginx.conf:88
root /var/www/SITE.COM;
или
root /var/www/USER/data/www/SITE.COM; ? (у меня в этой директории сайт)
и так и так не работает.
Видимо что-то ещё тут мешает.
lealhost, у нгинкса все наследуется по иерархии контекста
Как видно по ссылкам ниже, для директивы root максимальный контекст - http, для директивы roxy_pass - location
http://nginx.org/ru/docs/http/ngx_http_core_module.html#root
http://nginx.org/ru/docs/http/ngx_http_proxy_module.html#proxy_pass
---------- Добавлено 13.01.2015 в 00:37 ----------
X-whisper,Вы пробовали просто убрать add_header?
---------- Добавлено 13.01.2015 в 00:40 ----------
V2NEK, даже если и нет и оно как-то работало, то не в этом причина.
По дефолту root кажись /var/www/html
---------- Добавлено 13.01.2015 в 00:42 ----------
root /var/www/SITE.COM;
или
root /var/www/USER/data/www/SITE.COM; ? (у меня в этой директории сайт)
и так и так не работает.
Какую ошибку выдает? Или в чем заключается "не работает"?
lealhost
X-whisper,Вы пробовали просто убрать add_header?
Да, пробовал.
Ошибку в обоих случаях не выдаёт,
"не работает" значит в header картинок нет записей, которые бы кэш браузера их добавляли.
Смотрите в /var/log/nginx/error.log, что пишет.
Я нашёл решение!
Вот такая запись есть в конфиге
include /etc/nginx/vhosts/*/*.conf;
лезу в папку
vhosts/USERNAME/
нахожу нужный сайт и удаляю всё оттуда
У картинок появляется запись в header
Cache-Control:max-age=2592000, private
PROFIT
Сработало для главного домена, но
удалил все строки из /etc/nginx/vhosts/*/DOMAN2.conf , но на домене DOMAN2.COM по прежнему нет кэширования, значит где-то в nginx.conf что-то не учтено