Cменить пароль root

Дата: 19.11.2015Метки:

Чтобы сменить пароль root для операционной системы CentOS/Fedora/Debian, необходимо в терминале выполнить команду:

# passwd root

После чего дважды новый пароль.

Сохранить/восстановить настройки iptables

Дата: 19.11.2015Метки:

Чтобы быстро восстановить настройки iptables, можно сохранить текущую конфигурацию в текстовый файл. Для этого в начале необходимо добавить все правила, а затем чтобы сохранить настройки iptables в текстовый файл, выполним команду ниже:

iptables-save > /etc/iptables.conf

Для того чтобы восстановить настройки iptables, выполните команду:

iptables-restore < /etc/iptables.conf

Если необходимо автоматически восстанавливать настройки iptables после каждой перезагрузки сервера, добавьте команду в содержимое файла /etc/rc.conf

Сhrome блокирует файл

Дата: 18.11.2015Метки:

Если вы читаете этот пост, то наверняка столкнулись с проблемой, когда Chrome блокирует файл только что скачанный с интернета. На основе каких данных Chrome решает, что файл может нанести вред компьютеру мне не известно. Однако, достаточно часто Chrome блокирует загрузку файлов абсолютно не представляющих никакой угрозы.

Но главный недостаток состоит в том, что Chrome блокирует файл и при этом не оставляет никакого права выбора для пользователя. Если в системе установлен антивирус, который регулярно получает обновления, то я не вижу не единого аргумента в целесообразности использования данной функции.

Для того чтобы отключить блокировку подозрительный файлов в Chrome необходимо зайти:

Настройки - Дополнительные настройки - Личные данные - снимите галочку с Защитите сове устройство от опасных сайтов

Иконки CSS

Дата: 18.11.2015Метки:

Я испытываю слабость ко всем нестандартным штукам. Поэтому, в этом посте хочу рассказать о понравившейся мне библиотеке CSS-иконок — Fort Awesome Icons. Библиотека иконок реализована на чистом CSS. Кроме статических вариантов в сборке представлены анимированные CSS-иконки. С полным набором CSS-иконок можно ознакомится на этой странице. Чтобы использовать CSS-иконки на своем сайте, необходимо добавить в одержимое HTML-документа код из примера ниже.

<i class="fa fa-camera-retro fa-lg"></i> fa-lg
<i class="fa fa-camera-retro fa-2x"></i> fa-2x
<i class="fa fa-camera-retro fa-3x"></i> fa-3x
<i class="fa fa-camera-retro fa-4x"></i> fa-4x
<i class="fa fa-camera-retro fa-5x"></i> fa-5x

В зависимости от требуемого размера элемента, необходимо указать атрибут class. С полной информацией по использованию иконок можно ознакомится на странице GitHub.

Еще хороший ресурс с большим количеством иконок на различные темы icons8.

Добавить NoFollow для ссылок в WordPress

В отличии от тега target=_"blank", который открывает ссылку в новом окне, редактор WordPress не имеет встроенной возможности для вставки тега rel="nofollow". Как вариант можно вручную редактировать HTML-код, но это не удобно при частом добавлении ссылок.

Чтобы добавить тег nofollow автоматически для всех внешних ссылок в WordPress, можно использовать специальную функцию. Для этого скопируйте код ниже в содержимое файла functions.php вашей темы.

function add_nofollow_content($content) {
    $content = preg_replace_callback(
    '/<a[^>]*href=["|\']([^"|\']*)["|\'][^>]*>([^<]*)<\/a>/i',
    function($m) {
        if (strpos($m[1], get_bloginfo('url')) === false)
            return '<a href="'.$m[1].'" rel="nofollow" target="_blank">'.$m[2].'</a>';
        else
            return '<a href="'.$m[1].'" target="_blank">'.$m[2].'</a>';
    },
    $content);
    return $content;
}
add_filter('the_content', 'add_nofollow_content');

Если вы хотите управлять индексированием ваших ссылок самостоятельно, можно добавлять тег nofollow в процессе написания поста. C помощью специально плагина, мы сможем легко добавить тег nofollow для любой ссылки в визуальном редакторе WordPress.

Для этого вам необходимо установить плагин Title and Nofollow For Links. Плагин очень простой и не требует дополнительных настроек. Затем в режиме редактирования записи щелкните на кнопке «Вставитьизменить ссылку», чуть ниже пункта Открыть ссылку в новом окне вы увидите новую опцию Добавить атрибут rel="nofollow".

Создать пользователя и базу MySQL

Дата: 16.11.2015Метки:

Короткая заметка на тему как создать пользователя и базу MySQl для дальнейшей установки WordPress или любого другого движка. Все действия будем выполнять через консоль. В процессе понадобится создать безопасный пароль, я рекомендую сгенерировать случайную комбинацию с помощью сервиса Password Generator.

Чтобы создать базу MySQL заходим в mysql клиент под root. Параметры databasename, user и password нужно заменить на свои.

mysql -u root -p
Enter password:
Welcome to the MySQL monitor.  Commands end with ; or g.
Your MySQL connection id is 11455

Type 'help;' or 'h' for help. Type 'c' to clear the current input statement.

mysql> create database databasename;
Query OK, 1 row affected (0.00 sec)

mysql> grant all privileges ON databasename.* TO "user"@"localhost"
    -> identified by "password";
Query OK, 0 rows affected (0.00 sec)
  
mysql> flush privileges;
Query OK, 0 rows affected (0.01 sec)

mysql> exit
Bye

Удалить пользователя и базу MySQL:

drop user 'user'@'localhost';
drop database databasename;

Бесплатный VPS

Дата: 16.11.2015

Вместе с бесплатным VPS, cloudrino.net предлагает платные тарифные планы. Параметры VPS достаточно заманчивые, но есть недостаток в виде длинной очереди на бесплатный VPS. Например, с момента моей регистрации я нахожусь 28279 на очереди.

Конфигурация бесплатного VPS Сloudrino.net:

  • 512 MB RAM
  • Диск 10GB
  • Трафик 100GB
  • Linux OS

Обновление от 10.08.2016

Сегодня решил проверить как там мой бесплатный VPS. Неожиданно с #446 места в очереди меня перекинули на #44026. Наверно, не судьба, а так хотелось 🙂

Удалить папку Windows.old в Windows 10

Дата: 14.11.2015Метки:

После установки крупного обновления Windows 10 Threshold 2 в системном разделе остается папка Windows.old, которая занимает значительное место на диске. Чтобы удалить папку Windows.old в Windows 10 рекомендуется использовать функции мастера очистки диска.

Для нажмите правой кнопкой мышки по значку системного диска — «Свойства» — «Очистка диска» — нажмите кнопку «Очистить системные файлы» — в следующем окне выберите пункты: «Предыдущие установки Windows», «Временные файлы установки Windows», «Файлы журнала обновления Windows»

И напоследок, для чистой установки Windows 10 build 10586 можно скачать ISO-образ с официально сайта.

Установить модуль PhpRedis для PHP 7

Дата: 12.11.2015Метки: ,

Для использования Redis в PHP необходимо использовать дополнительные модули, либо такие php-библиотеки как Predis. С точки зрения скорости, более предпочтителен первый вариант. По моему опыту, производительность сервера PHP 7 в сочетании с модулем PhpRedis примерно в два раза выше по сравнению с использованием для этих целей библиотеки Predis.

Информацию по установке PHP 7 в Debian можно прочитать в этой статье. В данной записи речь пойдет о том как установить модуль PhpRedis для PHP 7. Мне не удалось найти PhpRedis в виде готового для использования в PHP 7 модуля. Поэтому, чтобы установить PhpRedis, придется собирать модуль из исходников. Для этого скачиваем исходники с репозитория GitHub:

cd /usr/src
wget https://github.com/edtechd/phpredis/archive/php7.zip

Распаковываем содержимое архива:

unzip php7.zip

Переходим в содержимое директории:

cd /usr/src/phpredis-php7

Если вы хотите хранить в базе Redis такие файлы как изображения или сжатые GZIP страницы, вам необходима поддержка модулем сериализации. Для этого понадобится библиотека igbinary.h.

mkdir /usr/src/phpredis-php7/ext
cd /usr/src/phpredis-php7/ext
wget https://github.com/igbinary/igbinary/archive/php7-dev-playground2.zip
unzip php7-dev-playground2.zip
mv igbinary-php7-dev-playground2 igbinary
cd /usr/src/phpredis-php7

С помощью команды phpize, необходимо выполнить подготовку окружения PHP-расширения:

phpize

В моем случае PHP 7 был установлен из исходников, поэтому необходимо указать полный путь:

/usr/local/php7/bin/phpize

Если вы не знаете расположение файла, его можно найти с помощью команды:

find -name phpize

Далее выполним команду:

./configure

В процессе я получил следующую ошибку:

Cannot find php-config. Please use --with-php-config=PATH

Пользуясь поиском, находим расположение файла php-config. В моем случае, файл расположен по следующему пути /usr/local/php7/bin/php-config. Затем повторно выполним команду:

./configure --with-php-config=/usr/local/php7/bin/php-config 
--enable-redis-igbinary

Выполним компиляцию модуля PhpRedis:

make

Далее необходимо вручную скопировать файл redis.so в каталог модулей PHP. А затем указать путь к файлу. Следует отметить, что расположения файлов и директорий указанных ниже, может отличаться от ваших.

cp modules/redis.so /usr/local/php7/modules

Указываем путь к файлу модуля в файле php.ini:

extension=/usr/local/php7/modules/redis.so

Чтобы применить настройки перезапусти PHP-FPM:

service php7-fpm restart

Используем Redis для кэширования WordPress

Использование Redis для хранения кэша страниц WordPress является хорошей альтернативной использованию fastcgi_cache в Nginx. Для работы кэша нам необходимо установить Redis сервер и немного изменить настройки хоста в Nginx. За выполнения функции кэширования будет отвечать специальный PHP-скрипт.

Для работы скрипта необходимо наличие на сервере установленного PHP-модуля PhpRedis. Модуль можно собрать из исходников, либо установить в Debian напрямую из deb пакета с помощью команды apt-get. Данный вариант подходит в том случае, если вы используете на вашем сервере PHP5.

На своем сервере я использую PHP7. Несмотря на все мои попытки, собратьPphpRedis для работы в PHP7 мне так и не удалось. Поэтому, в качестве альтернативы для работы с сервером Redis я буду использовать PHP библиотеку Predis. Для тех кто хочет поэкспериментировать, вот ссылка на ветку PhpRedis для PHP7.

Скачать скрипт кеширования можно c репозитория на сайте GitHub. Необходимо скопировать все файлы в корневую директорию сайта. Для работы кешировани необходимо в конфигурацию виртуальнго хоста Nginx добавить следующие строки:

server {
    listen 80;

    server_name localhost;
    root /usr/share/nginx/html;
   
    index index.php;

    location /index.php {
        alias /www/codebeer.ru/wordpress/wp-cache.php;
    }

    location / {
        index wp-cache.php;
        try_files $uri $uri/ /wp-cache.php?$args;
    }

    location /wp-admin/ {
        index index.php;
        try_files $uri $uri/ /index.php$args;
    }

    rewrite /wp-admin$ $scheme::/$host$uri/ permanent;

    location ~ .php$ {
        try_files $uri = 404;
        fastcgi_pass unix:/var/run/php5-fpm.sock;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include fastcgi_params;
    }
}