Какую конфигурацию плагина кэширования вы рекомендуете и почему при следующих допущениях:
- полный контроль над конфигурацией сервера
- запуск WordPress в многосайтовом / многодоменном режиме
- большинство доменов не используют
www.
префикс (куки) - (желание) иметь возможность отключить кеширование для определенных IP-адресов или на основе куки, когда вы вносите изменения в сайт, вам не нужно кэширование.
Подробности: я использую плагин Firefox для Google Page Speed, чтобы попытаться оптимизировать скорость сайта.
Также, пожалуйста, не руководствуйтесь общими рекомендациями, такими как изображения меньшего размера.
Будем честными, использование более одного плагина для кэширования принесет вам больше проблем, чем решит, поэтому попробуйте дать простой подход.
источник
Моя производительность WordPress и стек кэширования
Это лучший стек производительности WordPress для одиночного или среднего сервера с низким и средним диапазоном. Я классифицирую средний диапазон как одноядерный с около 1 ГБ памяти и довольно быстрыми дисками.
Серверный стек
PHP Cache
Стек плагинов для WordPress Performance
В W3 Total Cache мы используем диск для кэширования страниц и минимизации, потому что Nginx будет очень быстро обслуживать наши статические файлы.
Как настроить Nginx для обслуживания статических файлов и передачи PHP в Apache
Проблема с использованием только Apache заключается в том, что он открывает соединение и запускает php при каждом запросе даже для статических файлов. Это приводит к потере соединений, потому что Apache будет держать их открытыми, а когда у вас много трафика, ваши соединения будут отключены, даже если они не используются.
По умолчанию Apache прослушивает запросы через порт 80, который является веб-портом по умолчанию. Сначала мы собираемся внести изменения в наши файлы Apache conf и виртуальные хосты, чтобы прослушивать порт 8080.
Apache Config
httpd.conf
выключить KeepAlive
ports.conf
Виртуальный хост на сайте
Вам также следует установить mod_rpaf, чтобы ваши журналы содержали реальные ip-адреса ваших посетителей. Если нет, ваши журналы будут иметь 127.0.0.1 в качестве исходного IP-адреса.
Nginx Config
В Debian вы можете использовать репозитории для установки, но они содержат только версию 0.6.33. Чтобы установить более позднюю версию, вы должны добавить пакеты lenny backports
$ nano /etc/apt/sources.list
Добавить эту строку в файл
deb http://www.backports.org/debian lenny-backports main
$ nano /etc/apt/preferences
Добавьте следующее в файл:
Выполните следующие команды, чтобы импортировать ключ с backports.org для проверки пакетов и обновления базы данных пакетов вашей системы:
Теперь установите с помощью apt-get
apt-get install nginx
Это намного проще, чем компиляция из исходного кода.
Конфиг Nginx и файлы конфигурации сервера
nginx.conf
Теперь вам нужно настроить виртуальный хостинг Nginx. Мне нравится использовать метод с поддержкой сайтов, где каждый символ v host связан с файлом в каталоге сайтов.
default.conf
Замечания:
Параметры статического кэша в следующих файлах будут работать только в том случае, если включен плагин интегратора прокси-кэша Nginx.
За каждый сайт WordPress (для нескольких сайтов вам понадобится только один vhost)
Self Hosted CDN conf
Для вашей собственной CDN conf вам нужно только настроить ее для обслуживания статических файлов без пропуска прокси
Теперь запустите серверы
Результаты тестов
На Apache Bench эта установка теоретически может обслуживать 1833,56 запросов в секунду
источник
Используйте веб-пространство с минимумом 64 МБ ОЗУ для мультисайта и используйте APC и Memcached на Apache, кэшируйте не статично, и вы можете без проблем использовать все WP-функции. Сканируешь через PageSpeed, читаешь и другие варианты, там была закодирована тема. Кеш может сделать большую работу, но не может исправить плохую тему или плагин. Другим решением является использование поддоменов без файлов cookie в качестве CDN в WordPress. Добавьте это в wp-config.php для файлов cookie только на домене, а не на поддомене.
Теперь установите новые функции в functions.php темы или напишите плагин для замены статического содержимого пути формы на ваши субдомены, на ваш собственный CDN.
теперь функция для шаблона и пути к таблице стилей
Теперь прочитайте Page Speed на внешних статических URL CDN без файлов cookie.
Также добавьте следующий источник в .htaccess для блочного контента:
Пожалуйста, используйте функцию, также примеры, и вы можете написать свои решения с моими идеями.
источник
Стек веб-сервера
По сути, храните каждую операцию в памяти!
Все мои знания с открытым исходным кодом https://github.com/szepeviktor/debian-server-tools
источник