Конфигурация MySQL
Файл конфигурации MySQL my.cnf.
Стандартный путь: /etc/mysql
Установить язык default: UTF-8
Открываем файл на редактирование и пишем:
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8
[mysqld]
collation-server = utf8_unicode_ci
init-connect='SET NAMES utf8'
character-set-server = utf8
Добавление нового параметра в WebloginPE Modx Evo
Добавление параметра &dobFormat в сниппет WebloginPE в Modx Evo.
Редактируем код сниппета:
Пример Bruno
$dateFormat = isset($dateFormat) ? $dateFormat : '%A %B %d, %Y at %I:%M %p';
$dobFormat = isset($dobFormat) ? $dobFormat : '%m-%d-%Y';//add by Bruno
А также
$wlpe->CustomTable($customTable, $customFields, $prefixTable, $tableCheck);
$wlpe->dobFormat=$dobFormat;//add by Bruno
Редактируем файл webloginpe.class.php:
$age = substr($ageDecimal, 0, strpos($ageDecimal, "."));
$modx->setPlaceholder('view.dob', strftime($this->dobFormat, $viewUser['dob']));//dobFormat by Bruno
$modx->setPlaceholder('view.age', $age);
А также
// CREDIT : Guillaume for not format an empty date
$value==0?'':$modx->setPlaceholder('user.'.$key, strftime($this->dobFormat, $value));//dobFormat by Bruno
$modx->setPlaceholder('user.age', strftime('%Y', time() - $value));
В этом же файле перепишем функцию MakeDateForDb:
function MakeDateForDb($date)//modified by Bruno for $dobFormat
{
$formatArray= split('[/.-]', $this->dobFormat);
$dateArray= split('[/.-]', $date);
// $date is a string like 01-22-1975.
if (count($dateArray) !== 3)
return $this->FormatMessage($this->LanguageArray[27]);
$daypos = array_search('%d', $formatArray);
$monthpos = array_search('%m', $formatArray);
$yearpos = array_search('%Y', $formatArray);
// $dateArray is somethink like [0]=01, [1]=22, [2]=1975
// make a unix timestamp out of the original date string.
$timestamp = mktime(0, 0, 0, $dateArray[$monthpos], $dateArray[$daypos], $dateArray[$yearpos]);
return $timestamp;
}
После данных изменений добавляем параметр в вызове сниппета &dobFormat=`%d.%m.%Y` или в любом нужном для Вас формате.
Установка SSL сертификата на Apache CentOS
Инструкция по установке SSL сертификата на Apache на сервере CentOS.
Создание запроса на сертификат (CSR) для Apache.
Подключение к хостингу по SSH
Перешли в папку с Apache
cd /etc/httpd/conf/
Создание закрытого (приватного) ключа
openssl genrsa -des3 -out private.key 2048
«Enter pass phrase for private.key» - вводим пароль для защиты
«Verifying — Enter pass phrase for private.key» - повторяем пароль
less private.key - посмотрим на готовый ключ.
Q - нажмем для выхода.
Создание запроса на сертификат (CSR)
openssl req -new -key private.key -out domain-name.csr
«Enter pass phrase for private.key» - вводим пароль
Заполняем следующие поля:
Country Name: двухсимвольный код страны согласно ISO-3166. «RU» для России.
State or Province Name: название области или региона без сокращений;
Locality Name: название города или населенного пункта;
Organization Name: название организации в латинском эквиваленте;
Organizational Unit Name: название подразделения, для которого заказывается сертификат (необязательное поле);
Common Name: полностью определенное (FQDN) доменное имя;
Email Address: контактный e-mail адрес (необязательное поле);
A challenge password: не заполняется;
An optional company name: альтернативное имя компании (не заполняется).
Посмотрим на созданный файл
openssl req -noout -text -in domain-name.csr
less domain-name.csr - откроем для копирования данных
Заказали SSL сертификат у RU-Center.
При заказе вставили созданный код с файла domain-name.csr
Подтвердили по email и по тел.
Проверка длилась 2 дня. В первый день подтвердили email, а на след. день по телефону.
Скачали сертификаты с личного кабинета RU-Center
Подключение к хостингу по SSH
Перешли в папку с Apache
cd /etc/httpd/conf/
Все промежуточные сертификаты поочередно вставили в файл intermediate.crt
Загрузили файл domain-name.crt
открыли на редактирование файл httpd.conf
Дописали пару строк к нужному домену:
SSLEngine on
SSLCertificateKeyFile /etc/httpd/conf/private.key
SSLCertificateFile /etc/httpd/conf/domain-name.crt
SSLCACertificateFile /etc/httpd/conf/intermediate.crt
Сохранили изменения и перезапустили Apache
/etc/init.d/httpd stop
/etc/init.d/httpd start
Нужно ввести пароль, что создавали при создании файла private.key
Готово. Сертификат установлен.
Инструкции в pdf:
создание CSR для Apache
Установка SSL сертификата для Apache
Redirect http to https
Создаем redirect с http на https.
При условии что сервер apache.
Добавляем правило в файл .htaccess:
RewriteCond %{SERVER_PORT} ^80$
RewriteRule ^.*$ https://%{SERVER_NAME}%{REQUEST_URI} [R=301,L]
или вот такое правило:
RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteRule ^.*$ https://%{SERVER_NAME}%{REQUEST_URI} [R,L]
Готово. При попытке зайти на ваш сайт по http будет автоматически открываться сайт с https.
БЭМ (BEM) от Яндекс
БЭМ (Блок, Элемент, Модификатор) — компонентный подход к веб-разработке. В его основе лежит принцип разделения интерфейса на независимые блоки. Он позволяет легко и быстро разрабатывать интерфейсы любой сложности и повторно использовать существующий код, избегая «Copy-Paste».
Установка
- Минимальные требования
- Node.js 0.10+;
- Git Bash — для пользователей операционной системы Windows.
- Сделайте локальную копию project-stub
git clone https://github.com/bem/project-stub.git --depth 1 start-project
cd start-project
npm install
Важно: Не используйте права суперпользователя (root) при установке npm- и bower-зависимостей.
bower-зависимости ставятся при выполнении npm postinstall в папку libs.
npm start
Должна открыться страница с примерами блоков библиотеки.
Пошаговая инструкция: https://ru.bem.info/platform/tutorials/quick-start-static/
Презентация
bem-xjst — шаблонизатор для тех, кто ведёт веб-разработку в рамках БЭМ-методологии.
Шаблонизатор содержит два движка:
BEMHTML — для преобразования BEMJSON в HTML.
BEMTREE — для преобразования BEMJSON с данными в BEMJSON с БЭМ-деревом для последующего преобразования с помощью BEMHTML.
Как писать шаблоны на оф. сайте: https://ru.bem.info/platform/bem-xjst/