Индекс тут бессмысленный, т.к. approve и allow_main скорее всего флаги, кардиналити у них будет очень низкий.
Ваш вариант - кешировать данные, или если точность не кретична - ходить в информационные таблицы.
Лехко.
Как найти последнее число из полученного числа?
x = input - (input % 10) + (10 - (input % 10))
https://jsfiddle.net/90arbfvu/7/
Солнечные батареям не обязательно нужно солнце, они будут генерировать электричество даже в облачную погоду, но не так сильно. Сейчас батареи даже от лунного свечения заряжаются, хоть и медленно.
Вот правильная мысль, с которой я согласен. Хорошо батареи заходят в поселках возле моря.
Делайте memtest. С большой долей вероятности, память работает не правильно.
Это и есть первопричина. С htcacheclean не знаком, можно попробовать просто делать apache graceful restart, судя по доке апача это делается так: apachectl -k graceful, или просто послать ему USR1 сигнал. Но не уверен, что htcacheclean не работает другим способом.
Крайний вариант: попробовать обновить сам apache.
Я бы поставил интервал почаще, т.к. если сертификат истекает 31 числа, можно получить нерабочие сайты, хоть и на 1 день.
The SEO Framework
Судя по логам, в 6:25 ему говорят сделать graceful shutdown. Возможно, какой-нибудь certbot это делает, когда пытается обновить сертификаты SSL. То, что апач так грязно делает graceful shutdown - вопрос другой.
У вас 1 ядро?
А что у вас в логах юнита?
SELECT url, photo FROM catalogWHERE id IN ($ids)ORDER BY FIELD (id, $ids)
если в ids - более 15 значений, тогда LIMIT 0, 15;
либо сам ids обрезать до 15 элементов.
Если вы делаете пагинацию, то либо LIMIT, либо WHERE id > ваш_последний элемент с предыдущего списка, второй подход быстрее но сложнее в реализации и используется на очень больших таблицах.
http://sqlfiddle.com/#!9/a18852b/4
2 раза счетчик может инкрементится из-за Preflight запроса, который летит из-за CORS с методом Options. Тоже самое касательно ваших кешей, возможно сначала улетает HEAD, браузер понимает, что ресурс протух, и идет за новыми данными, хотя вебсервер не должен проксировать запрос дальше, но бывает всякое. Были у меня и ещё кейсы, но чет не могу вспомнить.
соблюсти порядок можно по ORDER BY FIELD(ваш_список_из_ID_через_запятую)
ещё советую мапнуть список сконвертировав в int, а то не очень понятно откуда он пришел, вдруг это из query пришло.
ну и да, prepared statements юзайте.