Тег: php


20 Jul 2016

Настройка мониторинга php-fpm через Datadog

Для настройки мониторинга необходимо внести некоторые изменеия в pool, который собираемся мониторить, настройку хоста в nginx и подключить конфиг агенту datadog.

Для начала откроем файл пула и раскоментируем следующие строки:

pm.status_path = /status
ping.path = /ping
ping.response = pong
28 Apr 2014

Введение в фреймворк Kriswallsmith Assetic

Пожалуй, одной из самых мощных библиотек для управления статическими файлами (стилями, джава-скриптами, изображениями) через PHP-скрипты является . Тем не менее, начать с ходу использовать Assetic под силу далеко не каждому профессионалу. Не говоря уже о новичках, для которых серьезным барьером является и английский язык.

Библиотека решает такие задачи, как:

  • Публикация статических фалов, находящихся в модулях за пределами директории веб-сервера
  • Объединение мелких файлов скриптов или стилей в один для ускорения загрузки
  • Встраивание мелких изображений в файлы стилей в кодировке base64 для ускорения загрузки
  • Обработка и компиляция стилей и скриптов из различных языков, таких как less или coffeescript в нативные css и javascript
  • Сжатие стилей и скриптов средствами различных оптимайзеров по вкусу
  • Оптимизация изображений PNG и Jpeg без потери качества

Данный перевод из официальной документации является введением в

Assetic

Assetic - это фреймворк для управления статическими активами для PHP-приложений.

<?php

use Assetic\Asset\AssetCollection;
use Assetic\Asset\FileAsset;
use Assetic\Asset\GlobAsset;

$js = new AssetCollection(array(
    new GlobAsset('/path/to/js/*'),
    new FileAsset('/path/to/another.js'),
));

// код объединяет файлы при выгрузке
echo $js->dump();
12 Nov 2013

Отслеживаем реферальные ссылки

Во многих случаях маркетологу, при получении заявки с сайта, интересно знать, откуда пришел посетитель? Также для отслеживания объявлений используются .

Рассмотрим пример, при котором пользователь приходит на одностраничный сайт и заполняет на нем форму.

<form method="POST">
    <input type="text" name="name" placeholder="Ваше имя"><br>
    <input type="text" name="phone" placeholder="Ваш телефон"><br>
    <button type="submit">Отправить</button>
</form>

А обрабатывается форма скриптом на языке PHP:

<?php
if (isset($_POST['name']) && isset($_POST['phone'])) {
    $to      = 'nobody@example.com';
    $subject = 'Запрос с сайта';
    $message = "Имя: {$_POST['name']}\nТелефон: {$_POST['phone']}";
    $headers = "From: {$to}\r\n" . "Reply-To: {$to}\r\n" . 'X-Mailer: PHP' . phpversion();

    mail($to, $subject, $message, $headers);
}
?>
04 Aug 2013

Файл запуска в SiteForeverCMS

Запуск системы стартует при обращении к скрипту index.php.

По умолчанию скрипт работает с маршрутом index, который указывает на страницу по-умолчанию.

Для того, чтобы послать запрос на работу с другим маршрутом, нужно необходимый маршрут после index.php. Т.е., чтобы обратиться к странице about, нужно выполнить запрос index.php/about. Для страницы about/contacts необходимо выполнить запрос index.php/about/contacts. Чтобы сделать запросы более понятными человеку, можно воспользоваться настройками mod_rewrite, входящего в состав сервера apache, либо другим механизмом, выполняющим аналогичные действия у других веб-серверов.

28 Jul 2013

Настройка VDS на Hetzner с дистрибутивом Ubuntu 12.04. Памятка.

В этой памятке собраны основные этапы настройки VDS от провайдера . Не смотря на то, что о нем принято отзываться не очень лестно, меня вполне устраивают его тарифы на VDS и качество предоставляемых услуг.

Сразу после установки получаем работающего пользователя root, из под которого управляем системой без использования su. И получаем к нему доступ сразу по ssh после ввода пароля.

Любой админ знает, что это очень опасно. Т.к. если злоумышленнику удастся скомпрометировать ваш пароль, он получит доступ ко всей системе.

28 Jul 2013

Настройка на VDS Nginx+PHP-FPM+SiteForeverCMS

В продолжении статьи о , разберем вопрос настройки Nginx и PHP-FPM и рассмотрим некоторые вопросы по работе сайта на этой связке на примере SiteForeverCMS.

Для начала удалим установленный на VDS апач (мне он все равно больше не понадобится).

sudo apt-get purge apache2-mpm-prefork apache2-utils apache2.2-bin apache2.2-common libapache2-mod-php5

Т.о. мы выпилим апач из системы, как будто его никогда в ней и не было. На всякий случай можно посмотреть, какие пакеты установлены в системе, и убедится, что апача точно больше нет:

dpkg-query -W --showformat='${Package}\n' | grep apache

Дальше нам надо :

sudo apt-get install nginx
sudo apt-get install php5-fpm

Готовы начать проект?

Я всегда открыт для обсуждения новых возможностей и интересных задач.