Убираем cookie из запроса к статистическим ресурсам

Список разделов Общие разделы Оффтопик

Описание: Здесь можно обсудить всё, что не связано с тематикой сайта.
Модератор: Поддержка

Сообщение #1 factotum » 05.05.2013, 23:21

Исходные данные: есть идея убрать cookie из запросов к статике (картинки, css, etc.)

Состряпал несколько строк для апача:
Код: Выделить всё
<IfModule mod_headers.c>
   <FilesMatch "\.(css|gif|ico|jpe?g|png)$">
      RequestHeader unset Cookie
   </FilesMatch>
</IfModule>
не работает.

немного поигравшись, выяснил, что операции с Cookie выполняются если не использовать фильтр:
Код: Выделить всё
<IfModule mod_headers.c>
   RequestHeader unset Cookie
</IfModule>
Понятно, что такой вариант не подходит - слетает авторизация и прочее необходимости.

Может кто подскажет, куда рыть, чтобы убивать кукизы по маскам?
factotum
Автор темы
Откуда: Люксембург
Репутация: 234
С нами: 11 лет 11 месяцев

Сообщение #2 VEG » 06.05.2013, 01:01

А чего вы собственно хотите этим добиться? Cookie совершенно не мешают загрузке статичных файлов.
VEG M
Администратор
Аватара
Откуда: Finland
Репутация: 1653
С нами: 11 лет 11 месяцев

Сообщение #3 Sumanai » 06.05.2013, 01:26

VEG:А чего вы собственно хотите этим добиться?

Скорее всего ускорение загрузки страниц. Чем меньше всего передаётся, тем лучше.
factotum, единственный вариант, который я знаю- вынести всю статику на поддомен и проследить, чтобы куки, выставляемые форумом, были только на домен. Тогда браузер не будет передавать куки, как и сервер. Заодно чётко разделите, что отдаётся апачем, а что nginx.
Но это я так, по дилетантски советую, прочитав пару статей в интернете.
Sumanai M
Аватара
Репутация: 1677
С нами: 11 лет 2 месяца

Сообщение #4 VEG » 06.05.2013, 01:49

Sumanai, верно, для такого нужно заводить отдельный субдомен, либо устанавливать cookie на один каталог, а файлы хранить в другом каталоге, который не будет являться подкаталогом первого. Но смысла в этом для форума немного. Эта сотня байт реально никакой погоды не сделает. У Chrome даже строка UserAgent наверное длиннее :) Думаю, использование SPDY, который умеет сжимать заголовки, могло бы дать ощутимое преимущество.
VEG M
Администратор
Аватара
Откуда: Finland
Репутация: 1653
С нами: 11 лет 11 месяцев

Сообщение #5 factotum » 06.05.2013, 09:04

VEG:Но смысла в этом для форума немного. Эта сотня байт реально никакой погоды не сделает.
Как бы руководствуюсь мыслью, что если цена оптимизации невелика, то почему бы нет?

Sumanai:вынести всю статику на поддомен
Такая организация уже есть.

Добавлено спустя 1 час 59 минут:
VEG:Chrome даже строка UserAgent наверное длиннее
В вэб-консоли как то так:
Код: Выделить всё
Cookie:phpbbex_bid=хххххххххххххххххххххххххххххххх; phpbbex_u=63; phpbbex_k=хххххххххххххххх; phpbbex_sid=хххххххххххххххххххххххххххххххх; __utma=123456789.1234567890.1234567890.1234567890.1234567890.123; __utmb=123456789.5.10.1234567890; __utmc=123456789;
это таскается с каждым колобком, аватаркой, etc...
factotum
Автор темы
Откуда: Люксембург
Репутация: 234
С нами: 11 лет 11 месяцев

Сообщение #6 VEG » 06.05.2013, 11:47

factotum:__utma=123456789.1234567890.1234567890.1234567890.1234567890.123; __utmb=123456789.5.10.1234567890; __utmc=123456789;
Эту часть добавляет Google Analytics. К сожалению, в Google видимо не знают о существовании Local Storage, чтобы не гадить во все запросы.
factotum:phpbbex
Ну и эту подстроку можно в админке сократить при желании :)
VEG M
Администратор
Аватара
Откуда: Finland
Репутация: 1653
С нами: 11 лет 11 месяцев

Сообщение #7 factotum » 06.05.2013, 12:01

VEG:Ну и эту подстроку можно в админке сократить при желании :)
вот и я чтобы сократить. только не пойму как браузеру рассказать, что к статике не нужно делать запрос :smile:

Судя по всему в примере выше все правильно. Кукизы на статику цепляются от php с приоритетом над апачем.
factotum
Автор темы
Откуда: Люксембург
Репутация: 234
С нами: 11 лет 11 месяцев

Сообщение #8 VEG » 06.05.2013, 12:03

factotum:вот и я чтобы сократить. только не пойму как браузеру рассказать, что к статике не нужно делать запрос :smile:
Никак. Куки ставятся на какой-то каталог и домен, и браузер отсылает их с каждым запросом — он не может знать, запрашивает он статику, или обычную динамичную страничку. Конфигурационные файлы сервера браузер также читать не умеет :) Единственный способ — разносить всё по разным каталогам или доменам.
VEG M
Администратор
Аватара
Откуда: Finland
Репутация: 1653
С нами: 11 лет 11 месяцев

Сообщение #9 Sumanai » 06.05.2013, 16:33

VEG:Единственный способ — разносить всё по разным каталогам или доменам.

phpbbex по умолчанию ставит куки и на поддомены, хотя в админке стоит адрес без точки. Так что надо править движок.
Sumanai M
Аватара
Репутация: 1677
С нами: 11 лет 2 месяца

Сообщение #10 VEG » 06.05.2013, 18:08

Sumanai, ну так и стили в phpBB / phpBBex грузят всё из своего же каталога :) Использование отдельного домена для статичных файлов не предусмотрено в принципе.
VEG M
Администратор
Аватара
Откуда: Finland
Репутация: 1653
С нами: 11 лет 11 месяцев


Вернуться в Оффтопик