К юбилею Анастасии Цветаевой

«У Марины Цветаевой есть сестра Анастасия. Она большая умница. Она сама писательница, только прозу пишет», – говорил Борис Пастернак.
15 сентября исполняется 125 лет со дня рождения советской и российской писательницы Анастасии Ивановны Цветаевой.
Будучи от природы одаренной, Анастасия  писала прозаические произведения, а главная ее книга «Воспоминания» воспроизводит не только исторический фон целой эпохи, насыщенной революциями и войнами, но и описывает положение интеллигентного человека, раскрывает тему свободы личности, показывает отношение властей к представителям творческого цеха. Пройдя суровые жизненные испытания, выпавшие на ее долю, Анастасия Ивановна не сломалась, а нашла себя в новом времени, оставив нам ценнейшие мемуары.
12 сентября 2019 года в библиотечно-информационном центре Колледжа агротехнологий и природообустройства прошло мероприятие, посвященное  творчеству писательницы. Гостями события стали студенты первых курсов специальностей «Защита в чрезвычайных ситуациях», «Лесное и лесопарковое хозяйство».
Подготовила и провела мероприятие библиотекарь колледжа Т.В. Юревич. Учащимся была продемонстрирована презентация о жизни и творчестве Анастасии Цветаевой, был показан отрывок из кинофильма «Последний день Анастасии Цветаевой». Также вниманию гостей была представлена книжная выставка, где можно было познакомиться с произведениями писательницы.

Знакомство с библиотечно-информационным центром

Традиционно в начале учебного года в Колледже агротехнологий и  природообустройства проводится знакомство студентов первых курсов с библиотечно-информационным центром. Здесь студентам колледжа предоставляются разнообразные возможности: пользование печатными учебниками и электронными книгами, компьютерами, видеоматериалами и другими ресурсами, что способствует полноценному развитию как познавательной, так и творческой деятельности студентов.
Но как это сделать правильно? Как научиться пользоваться библиотечным фондом нашего колледжа? Вопросы требуют детального объяснения.
Библиотекарь колледжа, Татьяна Владимировна Юревич, познакомила ребят с имеющейся литературой, правилами пользования, навыками правильного поиска источников необходимой учебной информации.
Студенты посетили выставку учебной литературы, прослушали обзор и поучаствовали в небольшой викторине.

Unity Vuforia и кнопочка “выход”

Случилось сегодня приложение для дополненной реальности тестировать на смартфоне, семейства Samsung, у которого сенсорные кнопки для закрытия приложения, отображения списка открытых приложений отсутствовали как класс. Может быть каким-то хитрым жестом руки это всё и работает, но я так сходу не разобрался.

А стало быть срочно следует добавить в приложение кнопочку “Выход”. И сделать это очень просто – создаём C# “Exit” скрипт со следующим кодом:

 

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class Exit : MonoBehaviour
 {
void OnGUI()
          {
if (GUI.Button(new Rect(10, 70, 50, 30), “Выход”)) {
Debug.Log(“Clicked the exit button”);
Application.Quit();
          }
     }

 }

Теперь перетащим его на ARCamera в Unity и перекомпилируем приложение. Готова кнопочка, даже работает. 🙂

 

Размещаем сайт на VPS с нуля. Часть 7. Получаем SSL: не очевидная проблема.

В настоящее время сайты массово переходят на протокол https. HTTPS (аббр. от англ. HyperText Transfer Protocol Secure) — расширение протокола HTTP для поддержки шифрования в целях повышения безопасности. Данные в протоколе HTTPS передаются поверх криптографических протоколов SSL или TLS. В отличие от HTTP с TCP-портом 80, для HTTPS по умолчанию используется TCP-порт 443.

Если сайт не использует HTTPS, то современный браузер выдаёт сообщение “подключение к сайту не защищено”. Кроме то в кабинете вебмастера нам будут настойчиво использовать шифрование. Для использования HTTP нам понадобится SSL-сертификат. Сертификат можно купить (оплата ежегодная) или взять свободно предоставляемый от компании https://letsencrypt.org/.

Мы воспользуемся вторым вариантом. Нам понадобится certbot. В Debian 9 он уже должен быть в репозиториях, а значит соединяемся с нашим сервером по putty и вводим команду:

apt-get install certbot

После установки бота получим сертификат на домен virtuatouch.ru командой (соответственно домен virtuatouch.ru меняется на ваш)

certbot certonly –webroot -w /var/www/virtuatouch.ru -d virtuatouch.ru -d virtuatouch.ru

у нас запросят e-mail и… всё это может закончиться былинным отказом. А дело в правилах ЧПУ, которые мы прописывали в 6-й часте.

У меня бот заработал только после того, как открыл lighttpd.conf – nano /etc/lighttpd/lighttpd.conf и убрал правила, удалил этот блок:

$HTTP[“host”] =~ “virtuatouch.ru” {
url.rewrite-final = (
# Exclude directories
“^/(wp-admin|wp-includes|wp-content)/(.*)” => “$0”,
# Exclude root php files
“^/(.*.php)” => “$0”,
# Handle permalinks and feeds
“^/(.*)$” => “/index.php/$1”
)
}

Перезапустил lightttpd командой systemctl restart lighttpd после чего снова запустил

apt-get install certbot

Всё прошло хорошо и в папке /etc/letsencrypt/live/virtuatouch.ru появились файлы сертификатов. Однако к этому каталогу мы должны предоставить доступ для lightttpd. Пропишем следующие команды:

chown :www-data /etc/letsencrypt
chown :www-data /etc/letsencrypt/live
chmod g+x /etc/letsencrypt
chmod g+x /etc/letsencrypt/live

ighttpd требует, чтобы сертификат и закрытый ключ были в одном файле. Стало быть их нужно объединить командой:

cat /etc/letsencrypt/live/virtuatouch.ru/privkey.pem /etc/letsencrypt/live/virtuatouch.ru/cert.pem > /etc/letsencrypt/live/virtuatouch.ru/merged.pem

Файлы privkey.pem и cert.pem будут объединены и сохранены как merged.pem.

Возвращаемся к редактированию конфигурационного файла lighttpd.conf

nano /etc/lighttpd/lighttpd.conf

прописываем

$SERVER[“socket”] == “:443” {
ssl.engine = “enable”
ssl.ca-file = “/etc/letsencrypt/live/virtuatouch.ru/chain.pem”
ssl.pemfile = “/etc/letsencrypt/live/virtuatouch.ru/merged.pem”

$HTTP[“host”] == “virtuatouch.ru” {
ssl.ca-file = “/etc/letsencrypt/live/virtuatouch.ru/chain.pem”
ssl.pemfile = “/etc/letsencrypt/live/virtuatouch.ru/merged.pem”
}

}

Опционально можно задать принудительное использование HTTPS.

$HTTP[“scheme”] == “http” {
$HTTP[“host”] =~ “.*” {
url.redirect = (“.*” => “https://%0$0”)
}
}

Можно также вернуть наши правила для ЧПУ ссылок для WordPress. !Да решение ну очень “не промышленное”, но иного я пока что не нашёл. Как найду – обязательно напишу, или напишите Вы в комментариях!. 

Сохраняем файл и перезапускаем lightttpd.

systemctl restart lighttpd

Сертификат выдаётся на 90 дней! После чего, где-то за неделю, нужно обновление. Это осуществляется командой:

certbot renew

После чего вновь используем команду:

cat /etc/letsencrypt/live/virtuatouch.ru/privkey.pem /etc/letsencrypt/live/virtuatouch.ru/cert.pem > /etc/letsencrypt/live/virtuatouch.ru/merged.pem

По большому счету надо бы обновления сертификатов автоматизировать, используя crontab. Но из-за конфликта с правила для ЧПУ-ссылок WordPress пока оставляю так.

 

Адресная помощь ветерану – войны

09 сентября 2019 года  волонтёры оказали адресную помощь  ветерану – войны Козыревой Надежде Ефимовне: занимались порубкой и уборкой дров, убрали уголь в сарай.

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

Педагог – ораганизатор Н.С. Пыхтина

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

C#-скрипт для дополненной реальности. Автофокусировка камеры.

Если Вы работаете с плагином Vuforia для дополненной реальности в Unity, то этот скрипт может оказаться весьма полезен. Он отвечает за автофокусировку камеры. Выбираем ARCamera – AddComponent – New script, добавляем под именем, например, CameraFocusController и вводим этот код:

 

using UnityEngine;
using System.Collections;
using Vuforia;

public class CameraFocusController : MonoBehaviour
{

// code from Vuforia Developer Library
// https://library.vuforia.com/articles/Solution/Camera-Focus-Modes
void Start()
{
var vuforia = VuforiaARController.Instance;
vuforia.RegisterVuforiaStartedCallback(OnVuforiaStarted);
vuforia.RegisterOnPauseCallback(OnPaused);
}

private void OnVuforiaStarted()
{
CameraDevice.Instance.SetFocusMode(
CameraDevice.FocusMode.FOCUS_MODE_CONTINUOUSAUTO);
}

private void OnPaused(bool paused)
{
if (!paused) // resumed
{
// Set again autofocus mode when app is resumed
CameraDevice.Instance.SetFocusMode(
CameraDevice.FocusMode.FOCUS_MODE_CONTINUOUSAUTO);
}
}
}

Компилируем, пробуем под ОС Андроид. Всё должно получиться. 🙂

Размещаем сайт на VPS с нуля. Часть 6. Установка WordPress.

Ну что ж, теперь у нас есть web-сервер lighttpd, интерпретатор php, сервер-баз данных maridb, ftp, припаркованное доменное имя. Всё готов для установки WordPress!

Заходим на ru.wordpress.org и скачиваем архив с вышеуказанной cms. Распакуем скачанный архив и перейдём внутрь распакованной папки. Перейдём в папку WordPress. Собственно всё вот эти файлы сейчас уже можно “залить” по ftp, но мы сделаем немного не так. Выделим их и снова сожмём в архив tar. Для этого я воспользуюсь программой 7-zip.

Далее через FileZilla отправляем архив tar по ftp в папку virtuatouch.ru. Открываем putty, подключаемся к нашему серверу. Переходим в директорию virtuatouch.ru

cd /var/www/virtuatouch.ru

Далее распаковываем tar-архив:

tar -xvf wordpress.tar

Заходим по адресу virtuatouch.ru и видим стандартную установку WordPress. Сервер базы данных оставляем как localhost. Имя пользователя – phpmyadmin. Пароль пользователя – тот, который мы указывали в этой заметке: https://makson.ru/razmeshhaem-sajt-na-vps-s-nulya-chast-4-ustanavlivaem-mysql-mariadb-i-phphmyadmin/

А вот имя базы… Базу придётся создать, можно через phpmyadmin. Опять же мы это делали здесь: https://makson.ru/razmeshhaem-sajt-na-vps-s-nulya-chast-4-ustanavlivaem-mysql-mariadb-i-phphmyadmin/

 

После соединения с базой данных wordpress попросит указать логин и пароль администратора сайта. Вводим данные ии.. установка закончена? Ну почти..

Ссылки на новости/статьи по умолчанию вордпресс формирует как http://имясайта/?p=1, а если мы хотим, чтобы в ссылки было название статьи, типа https://makson.ru/razmeshhaem-sajt-na-vps-s-nulya-chast-5-parkovka-domennogo-imeni/ – это уже называется Человеко-Понятные УРЛ (ЧПУ). Отвечают за это правила, прописанные в файле .htaccess системы WordPress. Вот толкьо правила эти воспринимаются веб-сервером apache, а у нас lighttpd.

Но нас это не остановит. Заходим через putty в наш веб-сервер и прописываем:

nano /etc/lighttpd/lighttpd.conf

Находим

server.modules = (
“mod_access”,
“mod_alias”,
“mod_compress”,
“mod_redirect”,
“mod_rewrite”,
)

Добавляем внутри фигурных скобок строку “mod_rewrite”, чтобы получилось так:

server.modules = (
“mod_access”,
“mod_alias”,
“mod_compress”,
“mod_redirect”,
“mod_rewrite”,
)

далее в конце файла прописываем такие правила:

#Permalink settings

$HTTP[“host”] =~ “virtuatouch.ru” {
url.rewrite-final = (
# Exclude directories
“^/(wp-admin|wp-includes|wp-content)/(.*)” => “$0”,
# Exclude root php files
“^/(.*.php)” => “$0”,
# Handle permalinks and feeds
“^/(.*)$” => “/index.php/$1”
)
}

Сохраняем файл и перезапускаем lighttpd.

systemctl restart lighttpd

 

Теперь в WordPress можем перейти в Настройки – Постоянные ссылки. В группе Общие настройки выбираем Произвольно. В строке ввода вводим /%postname%/ Всё должно заработать.

Ну и что на этом всё? Сайты открываются, php работает, MySQL есть, phpmyadmin тоже.. Ан нет. Во-первых у нас еще нет SSL-сертфиикатов для протокола HTTPS, а они нужны. И нет автоматического резервного копирования. А оно тоже очень требуется.

Так что ещё будут как минимум две статьи.

План совместных действий одобрен

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

Вот и сегодня, 5  сентября, состоялся круглый стол на котором рассмотрены перспективные  вопросы на текущий учебный год. Среди них-  участие  работодателей  в фестивале 27 сентября  «Мир профтеха-территория  успеха ! » на который заявились ООО «Долгов Групп холдинг», агрохолдинги «Залесье», КМК «Мираторг». Они же включились  в реализацию проекта «Профстажировки» и опубликовали кейсы,  которые  студенты могут использовать   для дипломных работ.        Участники  встречи решили  продолжить практику проведения  в колледже недель агрохолдингов, экскурсий студентов 1-2 курсов на аграрные предприятия, участие специалистов предприятий в демонстрационных экзаменах, проведение Дня карьеры  и других  мероприятий.

Реализация задуманного   требует регулярного общения и взаимодействия и к нашему большому удовольствию работодатели готовы к этому. Администрация колледжа благодарна за позитивное сотрудничество представителям компаний-участникам круглого стола Орловой Эльмире, Андреевой Елене,  Забегалиной  Юлии, Евстафьевой Татьяне, Давыдовой Олесе, Ким Ирине.

 

Размещаем сайт на VPS с нуля. Часть 5. Парковка доменного имени.

То, что наши php-файлы открываются по Ip-адресу сервера – это, конечно, хорошо. Но ещё лучше, если наши странички будут открывать по доменам.

При покупки доменного имени следует обращать внимание не только на непосредственно его стоимость регистрации, но и на стоимость продления. Многие компании (например 2domains, nethouse и др.) условно регистрирует имя в зоне ru за 100 р, а продлевают за 500.

Благо сейчас довольно безболезненно можно перенести домен от одного регистратора к другому (я так и сделал, перейдя от 2domains.ru к atname.ru).

По наиболее приемлемым ценам доменные имена продлевает уже упомянутый выше atname.ru и вполне адекватные цены у eternalhost.net

Домен можно вообще бесплатно зарегистрировать в зоне tk, через сайт freenom.com О том, как это сделать можно посмотреть, к примеру, у меня на Youtube: https://youtu.be/e7vhV6oHdWM

Но как “прикрепить” его к нашему VPS? Для начала создадим директорию отдельного сайта. В качестве примеру я буду использовать имя virtuatouch.ru

Соединяемся с нашим vps через putty и открываем для редактирования файл  lighttpd.conf

nano /etc/lighttpd/lighttpd.conf

в самом конце файла прописываем:

$HTTP[“host”] == “virtuatouch.ru” {
server.document-root = “/var/www/virtuatouch.ru”
}

Теперь создадим директорию:

mkdir /var/www/virtuatouch.ru

Перезапустим lighttpd

systemctl restart lighttpd

На всякий случай

chown www-data:web /var/www/ -R

Далее нам нужно сделать так, чтобы при наборе virtuatouch.ru пользователю предоставлялся ip-адрес нашего сервера. Я предлагаю использовать DNS Yandex.

DNS (англ. Domain Name System «система доменных имён») — компьютерная распределённая система для получения информации о доменах. Чаще всего используется для получения IP-адреса по имени хоста (компьютера или устройства).

Нам понадобится почта от yandex.ru. Авторизовываемся в почте и переходим по ссылке https://connect.yandex.ru

Во вкладке Вебмастер выбираем “Добавить домен” Далее я ввожу virtuatouch.ru

После чего вхожу в личный кабинет того регистратора, через которого была произведена регистрация. В моём случае это atname.ru. В личном кабинете выбираю перейти к управлению – virtuatouch.ru – управление ДНС-серверами/делегирование. В графе ДНС1 ввожу: ns1.reg.ru ДНС2: ns2.reg.ru

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

Yandex-connect Требует подтверждения прав на домен, возвращаемся в https://connect.yandex.ru нашего добавленного домена и выбираем способ подтверждения DNS. Добавьте в DNS-записи сайта virtuatouch.ru TXT-запись yandex-verification: тут код

Воспользуемся этим. Для этого в Управление зоной ДНС регистратора пропишем примерно так:

Теперь в connect.yandex.ru нажимаем “проверить”. Однако для обновления ns-записей домена должно пройти определённое время. Следует набраться терпения.

После подтверждения в дальнейшем мы изменим dns от reg на dns yandex и настроим домен на ip-адрес нашего vpn.

После подтверждения делегируем домен на серверы Яндекса. Для этого в кабинете регистратора (в моём случае atname.ru) следует выбрать “мои домены” – virtuatouch.ru – управление ДНС-серверами/делегирование. В графе ДНС1 ввожу: dns1.yandex.net в графе ДНС2: dns2.yandex.net

В Яндекс.Коннект перейдём в раздел управление DNS нашего домена. Выберем “Добавить DNS-запись”. Введём следующие значения:

Добавим также запись CNAME, чтобы наш домен открывался и с www.

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