Обнаружена активная php сессия wordpress как исправить ошибку
Каждая база данных MySQL хранится в отдельном каталоге внутри datadir. MySQL запускается под пользователем и создает файлы базы данных под тем же пользователем. По оценкам, цитирование в этом случае невозможно. Вам нужно заставить его создавать файлы базы данных с определенной пользовательской квотой. Это можно сделать, установив бит SUID (4000) для каталога базы данных.
Создайте базу данных в MySQL. Найдите каталог базы данных в datadir. По умолчанию это mysql:mysql.
Этот параметр заставит систему создавать файлы от имени владельца каталога (sql-user), а пользователь не будет иметь доступа к каталогу. Ему будет предоставлен полный доступ к MySQL (из группы mysql).
Теперь мы можем использовать квоты, как это делается с обычными файлами. Если квота превышена, MySQL выдаст ошибку полного диска, что нормально и правильно обрабатывается MySQL, хотя есть некоторые проблемы: при добавлении запроса к базе данных, превышающего квоту, запрос аварийно завершается, последующие запросы также аварийно завершаются, что можно исправить только убив их или освободив дополнительное дисковое пространство. При настройках по умолчанию это сразу же вызовет проблему, поскольку эти запросы будут занимать все сетевые соединения. Поэтому необходимо ограничить максимальное количество соединений для одного пользователя MySQL. В файле /etc/my.cnf:
Также возможна следующая ситуация — MySQL может быть помечен как поврежденный при выключении сервера или когда временные файлы занимают слишком много места на диске (последнее согласно инструкции, я это не проверял). Это можно вылечить, восстановив соответствующие таблицы.
Только корневая база данных может убить приостановленные процессы, если они достигли max_user_connections.
Авторизация и регистрация с сессией на чистом PHP
Не работает с таблицами innodb, так как последние хранятся в одном месте независимо от базы.
- Делайте как можно меньше HTTP-запросов;
- Используйте сети доставки контента, такие как Akamai;
- Не пренебрегайте HTTP-заголовком «Expires» или «Cache-control»;
- Предоставлять страницы в сжатом формате (например, mod_gzip);
- Включите ссылки на файлы таблиц стилей (link href) в начало документа;
- Ссылка на файлы JavaScript (script src) в конце документа;
- Не используйте оценочные выражения в CSS;
- Храните вставки JavaScript и CSS в виде отдельных файлов;
- Сократите количество обращений к другим доменам на странице (например, когда изображения или iframe загружаются с другого сервера, в идеале не более 3 доменов);
- Сократите JavaScript и CSS (например, используя JSMin или YUI compressor для удаления лишних пробелов, комментариев и сокращения переменных);
- Избегайте HTTP-перенаправлений;
- Устраните дублирование кода JavaScript (например, IE перезагружает повторяющиеся вставки «script src»);
- Настройте ETags («FileETag None» в Apache);
- Кэширование запросов Ajax;
- Сбрасывайте кэш в начале генерации страницы (например, периодически вызывая flush() в PHP, чтобы клиент получил ссылки на файлы CSS и начал их загрузку);
- Используйте метод HTTP GET для Ajax-запросов (он помещается в 1 TCP-пакет, тогда как POST отправляется в два этапа — заголовки и данные);
- Выделите содержимое, которое может быть загружено последним (например, отложенная загрузка изображений и блоков JavaScript после загрузки основной части);
- Выделение сценариев, которые должны быть загружены в первую очередь;
- Сокращение количества элементов в дереве DOM (минимизация количества HTML-тегов на странице);
- Разделите контент на разные домены: статический через отдельный домен static.domain.com (браузер будет загружать данные параллельно);
- Минимизируйте количество iframe, не используйте ссылки на другие ресурсы в iframe и script src (блокирует загрузку остальной части страницы);
- Избегайте ошибок 404 (страница не найдена);
- Уменьшите размер cookies (удалите ненужное содержимое, сократите имена, привяжите только к необходимым доменам, укажите время жизни);
- Для вспомогательных страниц исключите установку cookie (переместите изображения, CSS и скрипты на static.domain.com);
- Для JavaScript минимизируйте вызовы DOM (очень низкая производительность), устраните повторяющиеся запросы DOM с помощью кэширования;
- Оптимизируйте обработку событий JavaScript (используйте DOMContentLoaded вместо «onload», используйте onresize с осторожностью, аудит с помощью утилиты событий YUI);
- Загружайте CSS с помощью «link» в начале страницы, не используйте @import (в IE он загружает CSS в самом конце);
- Избегайте использования фильтров в CSS, они поддерживаются только в IE, лучше используйте PNG8;
- Оптимизация изображений (минимизация размера палитры, преобразование в PNG, оптимизация с помощью pngcrush, optipng или pngoptimizer, удаление комментариев в изображениях, оптимизация JPEG с помощью jpegtran);
- Оптимизация CSS спрайтов (css sprite) для фоновых изображений;
- Фактический размер изображения должен соответствовать указанным ширине и высоте (чтобы избежать масштабирования);
- favicon.ico должен быть маленьким (менее 1 Кб) и кэшируемым (должен быть установлен на Expires, 9% всех запросов в Yahoo Search приходятся на favicon.ico !)
- Если используется Flash, необходимо определить файл crossdomain.xml;
- Страницы, предназначенные для просмотра на мобильных устройствах, не должны превышать 25 Кб (иначе они не попадут в кэш iPhone);
- Для мобильных устройств можно использовать многокомпонентные блоки, в которых дополнения (css, изображения) упаковываются в саму страницу в виде вложений;
|