Модератор
Yui
(@fierevere)
永子
nginx не поддерживает сжатие deflate, лучше использовать mod_gzip для апача и для nginx директиву
gzip on;
gzip_vary on;
gzip_proxied any;
поясните пожалуйста поподробнее.
после добавления инструкций выше , на сервисах проверки сжатия мне пишут что все ок, страничка сжимается. а вот css и прочее нет. ((
скажите в теории, я могу сам включить сжатие, не имея ранее подобного опыта? Чтобы все не убить))
в панели управления хостингом есть вот это :
https://dl.dropboxusercontent.com/u/19954007/1rer.jpg
https://dl.dropboxusercontent.com/u/19954007/2rer.jpg
https://dl.dropboxusercontent.com/u/19954007/3rer.jpg
https://dl.dropboxusercontent.com/u/19954007/4rer.jpg
править конфиги руками я никогда не пробовал ((
спасибо за ответы
Модератор
Yui
(@fierevere)
永子
2. дополнительные директивы nginx
gzip on;
gzip_vary on;
gzip_proxied any;
gzip_types text/plain text/html text/css application/x-javascript text/xml application/xml application/xml+rss text/javascript;
gzip_min_length 524;
gzip_buffers 64 16k;
gzip_comp_level 6;
gzip_http_version 1.1;
это туда, убедитесь что перезапустили nginx, ну или можно просто перезагрузить сервер
mod_gzip в настройках апача я не вижу, но так думаю что он включен и не подлежит отключению 😀
.htaccess секцию сжатия deflate меняете на gzip
# BEGIN GZIP COMPRESSION
<IfModule mod_gzip.c>
mod_gzip_on Yes
mod_gzip_dechunk Yes
mod_gzip_item_include file \.(html?|txt|css|js|php|pl)$
mod_gzip_item_include handler ^cgi-script$
mod_gzip_item_include mime ^text/.*
mod_gzip_item_include mime ^application/x-javascript.*
mod_gzip_item_exclude mime ^image/.*
mod_gzip_item_exclude rspheader ^Content-Encoding:.*gzip.*
</IfModule>
# END GZIP COMPRESSION
Модератор
Yui
(@fierevere)
永子
PS: можете на втором экране поставить галку
«обрабатывать статические файлы с помощью nginx»
тогда можно в .htaccess ничего по сжатию не писать
однако если вы ставите кеширование на уровне браузера (expires)
тогда нужно еще в директивы nginx дописать им замену
я не очень уверена куда допишет ваша панелька эти директивы,
но они должны оказаться внутри блока server {}
location ~* ^.+\.(jpg|jpeg|png|ico|gif|swf)$ { expires 30d; }
location ~* ^.+\.(css|js)$ { expires 14d; add_header Vary Accept-Encoding; gzip on; gzip_static on; }
location ~* ^.+\.(woff|ttf)$ { expires 180d; add_header Vary Accept-Encoding; gzip on; }
а если я не буду ставить палку на втором экране, можно вот это не писать:
однако если вы ставите кеширование на уровне браузера (expires)
тогда нужно еще в директивы nginx дописать им замену
я не очень уверена куда допишет ваша панелька эти директивы,
но они должны оказаться внутри блока server {}
у меня стоит кэширование на уровне браузера. мне бы просто включить сжатие в самом простом режиме ))). все до PS мне вроде бы понятно. только сервер страшновато перегружать))) Я сегодня это уже сделал и он не запустился ))))))))))))). Оказалось что хоть я и не видел htaccess , пытался скопировать в директорию свой, и он затер существующий после чего сервер не запускался. это было ужасно ))))
еще раз спасибо огромное. ваша квалификация меня просто шокирует ))
Модератор
Yui
(@fierevere)
永子
а если я не буду ставить палку на втором экране, можно вот это не писать:
можно и не писать, просто апач это звено которое по идее можно вообще выкинуть и все делать через nginx + php fpm
работать это будет много быстрее и потребление ресурсов будет заметно снижено, это так.. имейте ввиду просто, что можно сделать лучше, особенно если нагрузка на сервер будет возрастать
сжатие в самом простом режиме может делать nginx с описаными выше директивами, ориентируется он на mime тип, возможно даже не обязательно что-то жать апачем (.htaccess) но если апач сожмет — то nginx отпроксирует сжатым, беды никакой не будет.
просто не используйте deflate, более распространен и используем gzip, они по сжатию одинаковы, но не совместимы.
в принципе гугл еще пихает Brotli теперь , но у меня к нему скептическое пока отношение, да и нагрузка на сервер будет выше, поддержка браузерами обещается в FF 44 , в Хроме тоже будет..
спасибо огромное!все заработало.
в продолжение вчерашнего разговора. скажите, пожалуйста, могут ли новые настройки конфликтовать с установленными плагинами типа суперкэш . у нас внезапно посыпались ошибки типа :
[error] [client 73.41.252.252] Premature end of script headers: index.php, referer: https://www.cup.com/checkout/
причем сам сайт работает нормально, а на странице завершения оформления заказа происходит вот такая красота(((
Модератор
Yui
(@fierevere)
永子
навряд ли, вообще суперкеш не должен кешировать /checkout
Спасибо за ответ. Я тоже так думаю
Я посмотрел настройки MYSQL — у них при 7,8 ГБ памяти на сервере innodb_buffer_pool_size — 8МБ . И все остальное в таком же духе. Так что не удивительно что при работе с БД возникают тормоза.
Модератор
Yui
(@fierevere)
永子
innodb_buffer_pool_size - 8МБ
это смешно, хотя нет.. даже не смешно уже
нормальные значения — около 128 M
MyISAM быстрее кстати для WordPress, минус конечно что если сервер некорректно будет выключен — таблицы поломаются, придется REPAIR делать
Я все думал почему все так тормозит. Знаю, что есть утилиты для расчета оптимальных значений, либо берется 70-80% от всей памяти сервера (только я не понял речь о специально выделенном mySQL сервере или ситуации когда на одной машине крутится все. )
В моем случае в БД есть таблицы обоих типов.
Модератор
Yui
(@fierevere)
永子
оба типа — неэффективное по памяти решение
в вашем случае лучше использовать обьектное кеширование на
apcu (apc если версия php не новая) или xcache
или вариант с memcached/redis
нужно установить соответствующее расширение php
настроить apcu/xcache на выделение памяти для variable cache
и использовать дроп-ин для вордпресса object-cache.php
соответствующего типа
производительность возрастает достаточно существенно
ну и про кеширование опкода не забывайте, тем же xcache/apc или opcache для новой php, для старой — eaccelerator
написал вам письмо. если не пришло, плиз, ответьте на kotbazilio жывотное gmail.com
спасибо
Модератор
Yui
(@fierevere)
永子
если предложение заключается в том чтобы настроить вам сервер, я наверное не соглашусь, на мне итак достаточно много всего висит