У меня есть веб-сайт с интегрированными Wordpress и PHPBB - и он был прекрасен в течение нескольких месяцев ... затем внезапно он загружается невероятно медленно.
В журналах apache ошибок нет, но просмотр страницы в firebug показывает 20-секундную паузу перед доставкой страницы.
более запутанно, на том же сервере, та же установка apache, PHPBB загружается за 30 мс, без задержки.
Я попробовал плагин hogdetector wordpress, который указывает, что задержка происходит до отправки заголовка, что, похоже, согласуется с firebug.
Есть идеи, как решить эту проблему дальше?
Вероятно, проблема с поиском в DNS! Проверьте конфигурацию DNS.
Если он у вас работает в Linux (или Linux-подобной среде), попробуйте запустить на нем анализатор пакетов при выполнении запроса и посмотрите, что он запрашивает, и приостановите его. Что-то вроде tcpdump или wirehark. Запустите это, запросите несколько страниц, посмотрите, каковы результаты. Если это проблема с DNS, он должен там появиться. Если с сетью все в порядке, тогда вам нужно будет начать проверку на наличие локальных проблем с установкой.
Вероятно, виноват один из ваших плагинов WP. Попробуйте отключить их один за другим и посмотреть, какой из них вызывает проблему.
Я заметил (tcpdump), что когда WordPress пытается загрузить внешний контент со стороны сервера, он может повторить попытку 3 раза в случае сбоя, ожидая ~ 5 секунд между каждой попыткой. Это 15-секундная систематическая задержка, если внешние данные постоянно недоступны; с дальнейшей обработкой страницы WordPress вы получите время отклика в Firefox 20 секунд, как и я.
У меня возникла эта проблема с плагином youtube, который пытался загрузить контент с youtube.com прямо с сервера. Разрешение DNS было нормальным при моей настройке, однако брандмауэр отправлял TCP RESET при попытках подключения WordPress.
Я решил эту проблему, отключив загрузку внешнего контента на стороне сервера (может быть, а может и не быть правильным подходом для вас) с помощью следующей директивы в wp-config.php
: define('WP_HTTP_BLOCK_EXTERNAL', true);
Для мелкозернистого управления существует дополнительная директива: define('WP_ACCESSIBLE_HOSTS', 'example1.com, example2.com');
Действительно странно, что блог работает медленно, но BBS в порядке. Если возможно, используйте браузер на сервере (текстовый?) Или что-то вроде wget. Если производительность локально правильная, единственное, о чем я могу думать, это проблема прокси. Конечно, если местная производительность оставляет желать лучшего, по крайней мере, вы знаете, что это на самом деле.