Выбор версии PHP 7 для PHP-FPM в ISPmanager 5

В панелях ISPmanager 5 есть возможность установки индивидуальных версий PHP для каждого сайта сайта. Но к сожалению, после установки альтернативных версий PHP 7 возможность изменения версии не совсем очевидна. Лично мне удалось установить альтернативную версию PHP 7 для PHP-FPM в ISPmanager 5 не сразу, а после некоторого времени поиска по настройкам панели.

После установки альтернативной версии в меню Возможности она будет установлена и для PHP-FPM по умолчанию. Но если вы попытаетесь изменить версию PHP в настройка сайта, вы заметите, что данная опция не активна, а по умолчанию будет использоваться PHP native.

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

Полная русификация Windows 10 (Server 2012, 2016)

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

В данной записи я расскажу, как выполнить полную русификацию интерфейса Windows 10, Windows Server 2012, Windows Server 2016. Данный мануал включает в себя установку русской локализации интерфейса, установку системной локали, установка русской раскладки клавиатуры, настройка русского языка для экрана приветствия и Microsoft Store.

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

Установка русификации Windows

Для Windows 10 жмем кнопку Start (Пуск) в меню с лева будет иконка шестеренки Settings. Копируем в строку поиска Region & language.
Для Windows Server 2012 или Windows Server 2016 заходим в панель управления: This PC, на пустом месте жмем правой кнопкой мыши и в открывшемся меню выбираем Properties. В правом меню выбираем Control Panel HomeRegion & language.

Жмем Add a language для добавления русского языка в качестве новой раскладки клавиатуры. Когда русский язык отобразится в списке жмем на нем и в открывшемся окне выбираем Download language pack. Дожидаемся загрузки и установки русской локализации интерфейса. Далее снова жмем на языке и выбираем Set as default languag. Изменения будут применены после завершения текущего сеанса и повторного входа в систему.

Установку системной локали Windows

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

Снова заходим в панель управления: для Windows 10, Windows Server 2012 или Windows Server 2016 Этот компьютер, на пустом месте жмем правой кнопкой мыши и в открывшемся меню выбираем Свойства. В правом меню выбираем Панель управленияРегиональные стандарты — вкладка Дополнительно, изменить язык системы... в выпадающем списке выбираем русский язык.

Система предложит выполнить перезагрузку системы, необходимо отказаться. Что бы установить русский язык для экрана приветствия в этом же окне Экран приветствия и учетные записи пользователей жмем кнопку Копировать параметры.... После чего можно выполнить перезагрузку системы.

Русификация Microsoft Store приложений

Откройте Магазин Windows. В заголовке окна с правой стороны значек с тремя точками. При нажатии на нем откроется меню, в котором необходимо выбрать Downloads and updates и установите все доступные обновления для Microsoft Store приложений.

На этом процесс русификации интерфейса Windows закончен. В случае необходимости Windows VPS c уже остановленной русской локализацией можно заказать по указанной ссылке.

Сброс пароля для VPS с Windows

Дата: 18.12.2018

Иногда случаются сложные ситуации, когда необходимо восстановить доступ к учетной записи администратора Windows. В моем случае я использовал Windows VPS от PoweVPS.ru с панелью VMmanager. Но не важно какая используется панель, главное иметь возможность загрузить сервер с установочного диска Windows.

Данное руководство сброса пароля подойдет для Windows Server 2012 R2 и Windows Server 2016. Для этих систем можно сбросить пароль пользователя и администратора стандартными средствами Windows.

Для начала загружаемся с установочного диска Windows. Далее переходим по следующим пунктам: Выбираем язык и нажимаем ДалееВосстановление системыДиагностикаКомандная строка

Выполняем команды:

ren d:\Windows\System32\Utilman.exe Utilman.exe.old
copy d:\Windows\System32\cmd.exe d:\Windows\System32\Utilman.exe

Выбираем загрузку с диска и отправляем сервер на перезагрузку. На этапе входа в систему нажимаем Windows Key + U после чего откроется окно с командной строкой. Выполните команду:

net user Administrator Qwerty12345

Где Qwerty12345 — новый пароль для учетной записи Administrator
На этом процесс сброс пароля Administrator на VPS с Windows закончен.

Установка Python 2 и sqlite 3 в CentOS 7

Небольшая заметка по настройке связки Python 2 и sqlite 3 в CentOS 7. Данная связка потребовалась мне для автоматизации повседневных задач на моем сервере.

На момент написания статьи в версия пакета sqlite 3.7.17 в репозитории CentOS 7:

# yum install sqlite3
Available Packages
Name        : sqlite
Arch        : i686
Version     : 3.7.17
Release     : 8.el7
Size        : 396 k
Repo        : base/7/x86_64
Summary     : Library that implements an embeddable SQL database engine
URL         : http://www.sqlite.org/
License     : Public Domain
Description : SQLite is a C library that implements an SQL database engine. A
            : large subset of SQL92 is supported. A complete database is stored
            : in a single disk file. The API is designed for convenience and
            : ease of use. Applications that link against SQLite can enjoy the
            : power and flexibility of an SQL database without the
            : administrative hassles of supporting a separate database server.
            : Version 2 and version 3 binaries are named to permit each to be
            : installed on a single host

Устанавливаем sqlite3:

yum install sqlite

Для установки Python модуля sqlite необходимо установить утилиту pip:

yum install python-pip

Проверим корректность установки командой:

# pip --version
pip 8.1.2 from /usr/lib/python2.7/site-packages (python 2.7)

Установим модуль sqlite3 для Python:

pip install pysqlite3

Выборочное обновление в CentOS 7

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

Иногда необходимо обновить исключительно одно ядро Linux, без обновления других пакетов в системе. Или наоборот обновить все пакеты, но не устанавливать новую версию ядра. С данной задачей нам помогут справиться дополнительные параметры для команды yum.

Для обновления всех пакетов в системе за исключением ядра, выполните команду:

yum update --exclude=kernel*

Если нужно наоборот обновить только ядро Linux в CentOS:

yum update kernel

Если необходимо установить только обновления безопасности:

yum install yum-security

Для выборочного исключения пакета:

yum update --exclude=PACKAGENAME

Увеличение диска в Linux

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

В данной заметке я расскажу как без потери данных увеличить размер диска в Linux. Действия производились на системе CentOS 7. Раздел был отформатирован в файловой системе ext4. Перед выполнением указанных ниже действий, рекомендую сделать бэкап данных.

Кратко процесс увеличения диска в Linux можно разделить на следующие шаги. Удаление старого раздела, создание нового раздела большего размера, увеличение размера файловой системы.

Загружаемся с любого LiveCD, подойдет Ubuntu. Для начала выполняем выполните команду:

fdisk /dev/sda -l

В данном примере я указал свое название диска sda, которое может отличатся от вашего.
Получаю следующий результат:

# fdisk /dev/sda -l
WARNING: fdisk GPT support is currently new, and therefore in an experimental phase. Use at your own discretion.

Disk /dev/sda: 480.1 GB, 480103981056 bytes, 937703088 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: gpt
Disk identifier: 005F2749-8E5A-4457-91EB-7227A4222981


#         Start          End    Size  Type            Name
 1         2048      1048575    511M  EFI System      primary
 2      1048576     42006527   19.5G  Linux filesyste primary
 3     42006528    937703054  427.1G  Linux filesyste

Из результата выполнения команды важно записать значение начального сектора раздела, в моем случае это 42006528

Теперь выполняем команду:

fdisk /dev/sda

Выполним d для удаления существующего раздела. Далее n – для создания нового, p – для primary, 3 – это номер раздела. В процессе укажем начало и конец раздела в секторах. Начальный сектор должен соответствовать начальному сектору раздела, который был удален. Последний сектор раздела выбираем максимально допустимый. Жмем w для записи изменений и выхода из fdisk.

Перезапускаем систему, загружаемся снова в LiveCD. Теперь нам необходимо расширить файловую систему на весь раздел:

e2fsck /dev/sda3
resize2fs /dev/sda3

В процессе проверки файловой системы будут найдены ошибки — это нормально. Соглашаемся и жмем y для исправления. Загружаемся с диска и проверяем изменения:

df -h

Для изменения диска в графическом режиме удобно использовать LiveCD с программой gparted

Установка memcached в CentOS 7

Быстрая установка memcached в CentOS 7. Устанавливаем пакет memcached и соответствующий модуль PHP:

yum install memcached php-pecl-memcached

Добавляем сервис в автозапуск и запускаем его:

systemctl enable memcached
systemctl start memcached

Далее необходимо перезапустить Apache или php-fpm

systemctl restart httpd
systemctl restart php-fpm

Открываем конфиг:

vi /etc/sysconfig/memcached

И добавляем в параметр OPTIONS:

OPTIONS="-l 127.0.0.1 -U 0" 

Делаем memcached рестарт для применения настроек:

systemctl restart memcached

Установить или обновить PHP 7 в CentOS

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

Небольшая заметка на тему, как установить или обновить PHP 7.0, PHP 7.1, PHP 7.2 в CentOS 7. Действия выполнялись на сервере с недавно установленной панелью Vesta. Если хотите сразу установить панель с PHP 7, необходимо выполнить указанные действия до установки панели.

Для начала подключаем репозиторий:

wget https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
wget http://rpms.remirepo.net/enterprise/remi-release-7.rpm
rpm -Uvh remi-release-7.rpm epel-release-latest-7.noarch.rpm

Далее устанавливаем yum-utils и выбираем версию PHP (remi-php70, remi-php71, remi-php72) для установки. Я устанавливаю PHP 7.2:

yum install yum-utils
yum-config-manager --enable remi-php72

Если PHP не был установлен в системе ранее, производим установку. Или устанавливаем панель Vesta.

Если PHP был ранее установлен, запускаем обновление:

yum update -y

Если вы ранее уже выполняли обновление таким способом. То предварительно нужно выполнить одну из команд ниже:

yum-config-manager --disable remi-php56
yum-config-manager --disable remi-php70
yum-config-manager --disable remi-php71

Установка ionCube Loader в CentOS 7

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

Ранее уже был мануал по установке ionCube в Ubuntu 16.04.

Скачиваем последнюю версию Ioncube Loader для системы 64-bit:

cd /tmp
wget http://downloads3.ioncube.com/loader_downloads/ioncube_loaders_lin_x86-64.tar.gz

Или Ioncube Loader для системы 32-bit:

cd /tmp
wget http://downloads3.ioncube.com/loader_downloads/ioncube_loaders_lin_x86.tar.gz

Распаковываем:

tar xfz ioncube_loaders_lin_x86-64.tar.gz

Что бы определить расположение файла php.ini и версию PHP создайте файл info.php в корневом каталоге сайта:

<?php
phpinfo();
?>

Выясним расположение каталога модулей PHP:

# php -i |grep extension_dir
extension_dir => /usr/lib64/php/modules => /usr/lib64/php/modules

Копируем модуль Ioncube Loader в каталог с расширениями:

cd /tmp/ioncube
cp ioncube_loader_lin_5.6.so /usr/lib64/php/modules/ioncube_loader_lin_5.6.so

Добавим загрузку модуля в файл php.ini. Откройте файл:

nano /etc/php.ini

И добавьте в его начало следующую строку:

zend_extension = "/usr/lib64/php/modules/ioncube_loader_lin_5.6.so"

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

Перезапустим php-fpm или apache:

systemctl restart httpd
service php-fpm restart

Если все сделали правильно, info.php выдаст следующий результат:

Copyright (c) 1997-2017 The PHP Group
Zend Engine v3.0.0, Copyright (c) 1998-2017 Zend Technologies
with the ionCube PHP Loader (enabled) + Intrusion Protection from ioncube24.com (unconfigured) v6.0.8, Copyright (c) 2002-2015, by ionCube Ltd.

Let’s Encrypt DNS problem: NXDOMAIN looking up

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

Ошибка по невнимательности при настройке Let’s Encrypt. Были созданы сертификаты на несуществующие домены. Далее в конфигурации Nginx домен был изменен и пересозданы сертификаты, но настройки Let’s Encrypt для продления сертификатов остались.

По этой причине при выполнении процесса обновления сертификатов постоянно сыпались ошибки. Для исправления нужно удалить конфиги для несуществующих доменов в каталоге /etc/letsencrypt/renewal/

Saving debug log to /var/log/letsencrypt/letsencrypt.log
Cert not yet due for renewal
Cert not yet due for renewal
Cert not yet due for renewal
Cert not yet due for renewal
Cert not yet due for renewal
Cert is due for renewal, auto-renewing...
Starting new HTTPS connection (1): acme-v01.api.letsencrypt.org
Renewing an existing certificate
Performing the following challenges:
http-01 challenge for a.codebeer.ru
Waiting for verification...
Cleaning up challenges
Attempting to renew cert from /etc/letsencrypt/renewal/a.codebeer.ru.conf produced an unexpected error: Failed authorization procedure. a.codebeer.ru (http-01): urn:acme:error:dns :: DNS problem: NXDOMAIN looking up A for a.codebeer.ru. Skipping.
Cert is due for renewal, auto-renewing...
Starting new HTTPS connection (1): acme-v01.api.letsencrypt.org
Renewing an existing certificate
Performing the following challenges:
http-01 challenge for b.codebeer.ru
Waiting for verification...
Cleaning up challenges
Attempting to renew cert from /etc/letsencrypt/renewal/b.codebeer.ru.conf produced an unexpected error: Failed authorization procedure. b.codebeer.ru (http-01): urn:acme:error:dns :: DNS problem: NXDOMAIN looking up A for b.codebeer.ru. Skipping.
Cert not yet due for renewal
Cert is due for renewal, auto-renewing...
Starting new HTTPS connection (1): acme-v01.api.letsencrypt.org
Renewing an existing certificate
Performing the following challenges:
http-01 challenge for c.codebeer.ru
Waiting for verification...
Cleaning up challenges
Attempting to renew cert from /etc/letsencrypt/renewal/c.codebeer.ru.conf produced an unexpected error: Failed authorization procedure. c.codebeer.ru (http-01): urn:acme:error:dns :: DNS problem: NXDOMAIN looking up A for c.codebeer.ru. Skipping.
Cert not yet due for renewal
3 renew failure(s), 0 parse failure(s)