У меня есть domain.localhost и assets.domain.localhost. Виртуальный хост в htppd.conf установлен правильно.Статический контент от субдомена
У меня есть папка в корне «общественный /» и есть другие папки, такие как изображения, скрипты, стили. Мне нужно обслуживать контент из domain.localhost и статических изображений, скриптов и стилей сервера из assets.domain.localhost.
У меня есть этот код в HTAccess:
RewriteEngine On
RewriteCond %{HTTP_HOST} !assets\.domain\.localhost
RewriteCond %{REQUEST_URI} \.(png|gif|ico|css|js)$ [NC]
RewriteRule ^(.*) http://assets.domain.localhost/$1 [L]
Первый вопрос: Правильно ли способ загрузки активов и уменьшить раздельно количество запроса от домена?
Второй вопрос: Я проверил его в поджигатель
и все было загружено из assets.domain.localhost, но CSS и JS был загружен дважды. Первый раз из domain.localhost с кодом 302 (всего несколько байтов, но это запрос), а не из assets.domain.localhost с кодом 304. Что я делаю неправильно?
Update
Этот способ увеличения результата в PageSpeed Insights, но снижение тест производительности веб-страницы. Во втором - более длинный ответ от сервера, и активы больше не являются кешем. У меня есть этот в htaccess для этого:
Header set Cache-Control "max-age=604800, public, must-revalidate"
<IfModule deflate_module>
<IfModule filter_module>
AddOutputFilterByType DEFLATE application/rdf+xml application/rss+xml application/atom+xml image/svg+xml
AddOutputFilterByType DEFLATE text/css text/javascript application/javascript application/x-javascript
</IfModule>
</IfModule>
Перед изменениями это сработало, а не кеширование не работает.
Update2
Ok проблема с первым запросом к domain.localhost, что не кэшируется, Secon запрос на assets.domain.localhost кэшируются. Как избавиться от первого ненужного запроса?
Я не изменю свой html. Я не хочу, чтобы изображения адреса и т. Д. Абсолютно. Моя идея позволяет относительный путь к изображениям, js, css, но в htaccess установить загрузку из assets.domain.localhost. Возможно? Логично, что вы пишете во втором абзаце, но почему это поведение происходит только в js и css, а изображения загружаются непосредственно из поддомена asets? – tomasr
Это должно быть как CDN. Отремонтируйте то же поведение, что и css, и js имеют jpegs, png не имеют – tomasr