Анализ логов веб сервера

Анализ логов веб сервера даст нам информацию, которую можно использовать для оптимизации сайта и для SEO оптимизации. Один из таких инструментов это Webalizer.

Вебалайзер показывает много информации. Основных показателей посещаемости шесть:

  • Запросы
  • Файлы
  • Страницы
  • Посещения
  • Сайты
  • Килобайты
Читать дальше >

Нагрузочное тестирование с помощью Tsung

На Linux Ubuntu 14.04 лучше не устанавливать через apt-get. А лучше скачать отюсда (http://tsung.erlang-projects.org/dist/) и установить deb пакет.

Читать дальше >

Работа с Git

Инициализация проекта

git init

Клонирование проекта

git clone <url>

Добавление в индекс новых файлов или измененных файлов

git add *.txt
git add readme.txt

Показ состояния

git status

Читать дальше >

Лог медленных запросов в mysql

Иногда нам нужно, определить почему SQL обрабатывается медленно. Конечно, это может зависеть от конфигурации, от железа, от неправильной схемы и от неправильного SQL запроса. Один из инструментов определения это лог медленных запросов.

Читать дальше >

Профайлинг xDebug

Думаю многие программисты занимаются профайлингом. Это заметка для новичков как установить профайлер xDebug. 

Предполагается, что у вас:
- Операционная системы Ubuntu 12.04
- Установлен Apache2.
- Установлен PHP 5.3 или выше.
- Установлен xDebug.

Читать дальше >

HTTP протокол

HTTP (англ. HyperText Transfer Protocol — «протокол передачи гипертекста») — протокол прикладного уровня передачи данных.

В Википедии все об этом протоколе подробно расписано. Тут я коротко опишу основные моменты, чтобы время от времени обращаться как к шпаргалке.

Читать дальше >

Принципы SOLID

SOLID это аббревиатура пяти основных принципов дизайна классов в объектно-ориентированном проектировании — Single responsibility, Open-closed, Liskov substitution, Interface segregation и Dependency inversion.

Читать дальше >

Шаблон проектирования Стратегия

Есть компания, которая разрабатывает имитаторы машин. В игре представлен город, в котором ездят разные виды машин. Проектировщики создали один суперкласс, на основе которого объявляются конкретные виды машин.

Другими словами, у нас есть суперкласс Car и много дочерних класса, которые реализуют конкретные типы машин.

Читать дальше >

Защита от SQL-инъекций

Отключаем "волшебные кавычки"

В настройках php, т.е в файле php.ini надо отключить следующее:
magic_quotes_gpc
magic_quotes_runtime

Если у вас нет доступа файлу php.ini отключить их можно в файле .htaccess:

php_flag magic_quotes_gpc 0
php_flag magic_quotes_runtime 0

Нам нужно их отключить, потому что они могут нам мешать. Начиная с версии 5.3.0 она считается устаревшей, а в 5.4.0 и вовсе удалена.

Читать дальше >

На заметку PHP программисту

1. Все элементы массива $_SERVER, начинающиеся со слова "HTTP_" - это HTTP заголовки. HTTP заголовки присылает клиент и верить им нельзя, так как их легко подделать. Их можно использовать дополнительно в справочных целях, которая, возможно, даст полезную информацию. 

2. Для логирования IP адреса пользователя использовать только REMOTE_ADDR, а всякие HTTP_X_FORWARDED_FOR, X_REAL_IP, VIA использовать только для дополнительной информации.

Читать дальше >