[Модуль] Yandex Home (yandexhome)

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

Модератор: immortal

leondin
Сообщения: 2
Зарегистрирован: Вс мар 17, 2019 6:25 pm
Благодарил (а): 0
Поблагодарили: 5 раз

Re: [Модуль] Yandex Home (yandexhome)

Сообщение leondin » Вс авг 04, 2019 10:51 am

griigoriok писал(а):
Пн июл 29, 2019 7:30 pm
skysilver писал(а):
Пн июл 29, 2019 6:46 pm
griigoriok писал(а):
Пн июл 29, 2019 6:40 pm
всё из офф образа 3_40_int ! своего ничего нет...
Значит особенности Nginx. Я с ним дела не имел, у меня Apache.

Можно попробовать добавить в файл конфига /etc/nginx/fastcgi_params такую строчку

Код: Выделить всё

fastcgi_param   PATH_INFO               $fastcgi_path_info;
и перезапустить nginx командой sudo service nginx reload
всё сделал как написали ничего не помогло.... :(
Сегодня победил проблему у себя на свежей версии для малинки. Если попробуете у себя вызвать команду
/modules/yandexhome/smarthome.php/v1.0

она вернет ошибку 404 так как ресурс не найден. Нужно nginx научить принимать такие ресурсы с параметрами. Для этого нужно выполнить команду
sudo nano /etc/nginx/sites-available/default

Открывается редактор параметров сайта

Заменить
location ~ \.php$ {

на

location ~ [^/]\.php(/|$) {

Этим мы говорим что ресурс не заканчивается на .php.

UPDATE. В текущей версии исправление выше присутствует, но что-то новое сломалось. Путь после smarthome.php система не видит. Нужно в том же файле под "location ~ [^/]\.php(/|$)" { найти

Код: Выделить всё

include snippets/fastcgi-php.conf;
и заменить на

Код: Выделить всё

                fastcgi_split_path_info       ^(.+\.php)(.*)$;
                set $tmp_var                $fastcgi_path_info;
                include snippets/fastcgi-php.conf;
                fastcgi_param PATH_INFO       $tmp_var;
END OF UPDATE

Далее перезагружаем сервер
sudo service nginx restart

Убеждаемся что адрес работает
/modules/yandexhome/smarthome.php/v1.0

Значит Яндекс так же заработает.
Последний раз редактировалось leondin Чт мар 24, 2022 9:19 am, всего редактировалось 1 раз.
За это сообщение автора leondin поблагодарили (всего 5):
Aldaran (Вс авг 04, 2019 11:26 am) • griigoriok (Вс авг 04, 2019 11:36 am) • Dim@n777 (Вт авг 06, 2019 12:11 pm) • dimon90 (Пн сен 09, 2019 1:39 pm) • Mavric (Сб сен 21, 2019 7:06 am)
Рейтинг: 5.81%
Аватара пользователя
griigoriok
Сообщения: 20
Зарегистрирован: Пн июл 29, 2019 4:45 pm
Откуда: Губкинский
Благодарил (а): 5 раз
Поблагодарили: 0

Re: [Модуль] Yandex Home (yandexhome)

Сообщение griigoriok » Вс авг 04, 2019 11:37 am

leondin писал(а):
Вс авг 04, 2019 10:51 am
griigoriok писал(а):
Пн июл 29, 2019 7:30 pm
skysilver писал(а):
Пн июл 29, 2019 6:46 pm
griigoriok писал(а):
Пн июл 29, 2019 6:40 pm
всё из офф образа 3_40_int ! своего ничего нет...
Значит особенности Nginx. Я с ним дела не имел, у меня Apache.

Можно попробовать добавить в файл конфига /etc/nginx/fastcgi_params такую строчку

Код: Выделить всё

fastcgi_param   PATH_INFO               $fastcgi_path_info;
и перезапустить nginx командой sudo service nginx reload
всё сделал как написали ничего не помогло.... :(
Сегодня победил проблему у себя на свежей версии для малинки. Если попробуете у себя вызвать команду
/modules/yandexhome/smarthome.php/v1.0

она вернет ошибку 404 так как ресурс не найден. Нужно nginx научить принимать такие ресурсы с параметрами. Для этого нужно выполнить команду
sudo nano /etc/nginx/sites-available/default

Открывается редактор параметров сайта

Заменить
location ~ \.php$ {

на

location ~ [^/]\.php(/|$) {

Этим мы говорим что ресурс не заканчивается на .php.

Далее перезагружаем сервер
sudo service nginx restart

Убеждаемся что адрес работает
/modules/yandexhome/smarthome.php/v1.0

Значит Яндекс так же заработает.
Ай да красава спасибо помогло !
Молодца !
skysilver
Сообщения: 3006
Зарегистрирован: Чт авг 21, 2014 8:28 am
Откуда: Киров, Россия
Благодарил (а): 400 раз
Поблагодарили: 1753 раза
Контактная информация:

Re: [Модуль] Yandex Home (yandexhome)

Сообщение skysilver » Пн авг 05, 2019 10:29 am

leondin писал(а):
Вс авг 04, 2019 10:51 am
победил проблему у себя на свежей версии для малинки.
Завел тикет https://connect.smartliving.ru/ideas/667.html Отмечайтесь, чтобы исправили образ, и не было необходимости ковырять конфиги самим.
За это сообщение автора skysilver поблагодарил:
Mavric (Сб сен 21, 2019 7:06 am)
Рейтинг: 1.16%
MajorDoMo (GitHub) на Cubietruck. ОС Debian 7 (wheezy) (kernel 3.4.105) с переносом на HDD.
Мой CONNECT | Блоги | Telegram
Аватара пользователя
griigoriok
Сообщения: 20
Зарегистрирован: Пн июл 29, 2019 4:45 pm
Откуда: Губкинский
Благодарил (а): 5 раз
Поблагодарили: 0

Re: [Модуль] Yandex Home (yandexhome)

Сообщение griigoriok » Пн авг 05, 2019 8:02 pm

Мужики помогите решить проблему....
Сделал всё как в инструкции skysilvera плюс последняя настройка nginx всё заработало ... Но буквально через минут 20 отваливается apache и приходится через ssh его заново перезапускать reload и так по кругу .
Малина 3В + и образ 3.40.
skysilver
Сообщения: 3006
Зарегистрирован: Чт авг 21, 2014 8:28 am
Откуда: Киров, Россия
Благодарил (а): 400 раз
Поблагодарили: 1753 раза
Контактная информация:

Re: [Модуль] Yandex Home (yandexhome)

Сообщение skysilver » Пн авг 05, 2019 9:20 pm

griigoriok писал(а):
Пн авг 05, 2019 8:02 pm
Мужики помогите решить проблему....
Сертификат SSL и публикация вебхуков каким способом организована? vpnki? Если да, то апач не нужен в принципе. На образе для малины все будет работать "из коробки", не считая вышеуказанной правки конфига nginx и добавления вебхуков в исключения авторизации МДМ в config.php.
За это сообщение автора skysilver поблагодарили (всего 2):
griigoriok (Вт авг 06, 2019 8:10 am) • Dim@n777 (Вт авг 06, 2019 12:11 pm)
Рейтинг: 2.33%
MajorDoMo (GitHub) на Cubietruck. ОС Debian 7 (wheezy) (kernel 3.4.105) с переносом на HDD.
Мой CONNECT | Блоги | Telegram
Аватара пользователя
griigoriok
Сообщения: 20
Зарегистрирован: Пн июл 29, 2019 4:45 pm
Откуда: Губкинский
Благодарил (а): 5 раз
Поблагодарили: 0

Re: [Модуль] Yandex Home (yandexhome)

Сообщение griigoriok » Вт авг 06, 2019 8:09 am

skysilver писал(а):
Пн авг 05, 2019 9:20 pm
griigoriok писал(а):
Пн авг 05, 2019 8:02 pm
Мужики помогите решить проблему....
Сертификат SSL и публикация вебхуков каким способом организована? vpnki? Если да, то апач не нужен в принципе. На образе для малины все будет работать "из коробки", не считая вышеуказанной правки конфига nginx и добавления вебхуков в исключения авторизации МДМ в config.php.
у меня есть доменное имя с выпущенным сертификатом SSL . Эти три файла с расширением .pem . (Их я стянул со своего Synology)
потом на малине создал директорию /etc/apache2/ssl/webhooks/ туда перенёс эти файлы, а дольше всё как в инструкции Skysilver
sudo a2enmod ssl proxy proxy_http
sudo systemctl restart apache2
sudo apachectl -M | grep 'ssl\|proxy'
sudo nano /etc/apache2/sites-available/webhooks.conf
содержимое файла забил как показано в табличке изменив только своё доменное имя и email
sudo mkdir /var/www/webhooks
sudo a2ensite webhooks.conf
sudo systemctl reload apache2

vpnki - я не трогал и не устанавливал .

apache2 в ports.conf установил Listen 443
потом в nginx внёс изменения location ~ [^/]\.php(/|$) {
и всё заработало !!!! но через мин 20 вылетает apache :( и Yandex Home перестаёт фурычить...

предвижу ответы : да тебе вообще не так надо было делать! так как у тя выделенный ip ! тут совсем всё просто :D (СОГЛАСЕН)
Отвечаю еще раз в linux е я не селён , как и в программировании - по этому я тупо не знаю как это делать !
Поэтому смотрю в выставленную инструкцию и пытаюсь повторить !!!!!! Как могу!!! на что более и менее хватает знаний ( а ум у меня пытливый :D )
skysilver
Сообщения: 3006
Зарегистрирован: Чт авг 21, 2014 8:28 am
Откуда: Киров, Россия
Благодарил (а): 400 раз
Поблагодарили: 1753 раза
Контактная информация:

Re: [Модуль] Yandex Home (yandexhome)

Сообщение skysilver » Вт авг 06, 2019 9:38 am

griigoriok писал(а):
Вт авг 06, 2019 8:09 am
и всё заработало !!!! но через мин 20 вылетает apache :(
В любых подобных ситуациях надо начинать с чтения логов приложения, у которого проблема.
Если есть удаленный доступ по SSH, то могу зайти и глянуть поверхностно что к чему там у тебя.
MajorDoMo (GitHub) на Cubietruck. ОС Debian 7 (wheezy) (kernel 3.4.105) с переносом на HDD.
Мой CONNECT | Блоги | Telegram
Aldaran
Сообщения: 64
Зарегистрирован: Вс июн 02, 2019 4:09 pm
Благодарил (а): 13 раз
Поблагодарили: 9 раз

Re: [Модуль] Yandex Home (yandexhome)

Сообщение Aldaran » Вт авг 06, 2019 7:40 pm

griigoriok писал(а):
Вт авг 06, 2019 8:09 am
apache2 в ports.conf установил Listen 443
потом в nginx внёс изменения location ~ [^/]\.php(/|$) {
и всё заработало !!!! но через мин 20 вылетает apache :( и Yandex Home перестаёт фурычить...
А зачем тебе apache2 и nginx одновременно чтобы работали на одной машине? Используй либо apache2, либо nginx.
Или ты хочешь закрыть доступ из вне, но не знаешь как?
Аватара пользователя
griigoriok
Сообщения: 20
Зарегистрирован: Пн июл 29, 2019 4:45 pm
Откуда: Губкинский
Благодарил (а): 5 раз
Поблагодарили: 0

Re: [Модуль] Yandex Home (yandexhome)

Сообщение griigoriok » Вт авг 06, 2019 8:18 pm

да не нужно мне два одновременно... мне нужен один но рабочий пофиг какой - абы работал yandex Home.
Aldaran
Сообщения: 64
Зарегистрирован: Вс июн 02, 2019 4:09 pm
Благодарил (а): 13 раз
Поблагодарили: 9 раз

Re: [Модуль] Yandex Home (yandexhome)

Сообщение Aldaran » Вт авг 06, 2019 8:57 pm

Для nginx, но с открытым входом из вне (ссылка).
Для apache2, с открытым входом из вне. (ссылка).
Обратить внимание на сертификаты и их пути.
Не забудь раскомментировать в config.php строки с активацией запроса пароля при доступе из внешних сетей и добавить адреса вебхуков модуля в исключения.
Если сервер nginx, то отключить виртуальные хосты apache2 (sudo a2dissite имя_файла), ну или просто почистить /etc/apache2/sites-enabled. Так же стоит отключить apache2 с автозагрузки (sudo update-rc.d apache2 disable) и поставить на автозагрузку nginx. И наоборот если конфиг на apache2.
После проверки работы через открытия https://... В Yandex следует отвязать старый аккаунт, и по новой объединиться.
Ответить