Как разместить базу 1с на хостинге
Ни одно крупное предприятие сегодня не обходится без бухгалтерского учета, от которого зависит не только экономика компании, но и ее процветание. С каждым днем проводить его становится все сложнее и сложнее, поэтому руководители приходят к внедрению специального софта. На территории СНГ распространен пакет программ 1С, который легко справляется с документооборотом и упрощает бухучет.
Далее мы поговорим о том, что представляет собой 1С и как его можно установить на VDS.
1С: что это за программа и где она используется
1С – группа программ, разработанная одноименной корпорацией для автоматизации бизнеса. За время существования она прошла большой путь от обычного продукта для бухгалтерии до профессиональной системы управления бизнесом.
Принято разделять продукт на две роли: платформа и конфигурация. Первая предназначена для работы пользователя в программе. Без платформы невозможно запустить никакую конфигурацию, однако обратное работать может. Платформы «Предприятие» и «Бухгалтерия» могут быть разделены на различные версии (все они активно используются и поддерживаются разработчиками).
Конфигурации же устанавливаются на платформу, они предназначены для решения конкретной задачи. Их обычно разделяют на типовые, отраслевые, специализированные и индивидуальные.
Типовой пакет включает в себя три основные конфигурации:
Бухгалтерия. Поддерживает различные формы для налогового и бухгалтерского учета.
Управление торговлей. Включает основные компоненты для торговых компаний.
Зарплата и управление персоналом. Специальный пакет для расчета ЗП, учета кадров, делопроизводства и др.
Примеры отраслевых конфигураций:
для гостиничного дела: отель, общепит, турагенство;
для пищевого производства: рыбопереработка, мясокомбинат, кондитерское производство;
для жилищных хозяйств: управление теплосетью, водоканалом, предприятием ЖКХ.
Также мы можем заказать индивидуальную услугу, которая будет полностью спроектирована под определенную отрасль.
Установка 1С на VDS
Внедрение 1C на VDS принято разделять на несколько стадий. Это инсталляция необходимого софта для корректной работы сервера, подключение PostgreSQL и установка всей системы.
Рассматривать каждый этап мы будем на примере «1С: Документооборот КОРП 2.0». Давайте ознакомимся с рекомендуемыми системными требованиями:
Оперативная память: от 8 ГБ.
Процессор: от 5 ГГц.
Для выбранных характеристик отлично подойдут тарифы с мощным процессором от Timeweb, о которых мы подробно поговорим в разделе «Тарифные планы HighCPU».
Установку 1С осуществим на ОС Linux, поэтому позаботьтесь об этом заранее – поставьте Ubuntu на свой VDS. Также для работы с консолью рекомендуем установить на компьютер программу PuTTY – она позволяет удаленно подключаться к VDS. Но особенность ее совсем в другом – можно удобно вставлять команды из буфера обмена.
Рассмотрим, как подключиться к VDS и провести начальные настройки для последующей установки программы.
Производительные VDS с минимальным steal time — 15 дней бесплатно
Дарим 15 дней на тарифе Scarlett! Закажи VDS, внеси платеж от 50 рублей и активируй промокод community15.
Подготовка к установке
Запускаем программу PuTTY и подключаемся удаленно к серверу: для этого вводим IP-адрес машины и выбираем SSH-протокол.
Далее вводим имя пользователя и пароль для авторизации.
При успешном подключении перед нами отобразится окно приветствия. Все последующие команды для внедрения 1С мы будем вводить в это окно. Запомните, что команды можно скопировать и вставить простым щелчком правой кнопкой мыши.
Давайте приступим к первоначальным настройкам: добавим в систему текстовый редактор, утилиты Midnight Commander и HTOP. Для этого поочередно вводим:
Следующим шагом нам потребуется создать нового пользователя с любым именем:
Заносим этого юзера в group sudo, чтобы он смог реализовать особые процедуры:
Добавляем имя в баш-среду:
Теперь нам потребуется отредактировать доступ по протоколу. Для этого воспользуемся строчкой кода:
В результате перед нами отобразится другой интерфейс окна – в нем будем вводить уже не команды, а вносить правки в строки. Следующим шагом нам требуется изменить порт на 2234. Находим в окне строку «port» и просто меняем значение:
Также нам нужно защитить сервер от посторонних лиц, для этого отключаем доступ root:
Активируем права для corpuser, для этого добавляем новую строчку:
В конце сохраняем все внесенные изменения с помощью клавиатурных кнопок «Ctrl+O». Далее используем «Ctrl+X», чтобы выйти, и перезапускаем протокол:
Мы установили дополнительные компоненты, добавили нового пользователя и застраховали сервер от нежелательных гостей. Далее авторизуемся под созданным именем и портом:
Для более мощной защиты мы также можем применить SSH-ключи вместо пароля при авторизации.
Осталось выполнить еще несколько действий, перед тем как мы перейдем к основным этапам.
Узнаем имя компьютера с помощью команды:
Потом проверяем пинг:
Если пинг не идет, заходим в редактор nano:
Добавляем в файл последней строкой:
Возвращаемся к пункту 2 и пробуем снова.
Итак, предварительные настройки мы провели, теперь давайте загрузим дополнительное ПО для работы с 1С.
Этап 1: Установка софта
Изменим список источников:
Чтобы добавить новые источники (данный список источников актуален только для ОС Ubuntu), вводим:
Сохраняемся и выходим, применив известные комбинации «Ctrl+O» и «Ctrl+X».
Следующим шагом устанавливаем программное обеспечение. Используем:
Также устанавливаем шрифты, чтобы информация в 1С отображалась корректно:
На этом все. Далее нам потребуется поставить на виртуальный выделенный сервер PostgreSQL. Это система управления базами данных, которая необходима для работы 1С.
Этап 2: Ставим PostgreSQL
Загрузку сервера мы будем осуществлять из образа, который был разработан корпорацией 1С. Но для начала нам нужно сменить региональные настройки, так как «Предприятие» включает в себя кодировку UTF-8. Настроить это можно следующим образом:
Проверить настройки языка можно с помощью команды locale. Использовав ее, увидим, что изменения были корректно внесены:
Установить PostgreSQL можно прямо из репозитория. Покажу на примере Ubuntu:
На этом установка PostgreSQL завершена. Теперь нам осталось поставить только 1С.
Этап 3: Добавляем 1С на VDS
Все нужные файлы для загрузки 1С мы уже скопировали в каталог. Давайте инсталлируем их:
После это в Убунту будет создан юзернейм: usr1cv8 и группа grp1cv8. Откроем для них права:
И последним действием запускаем VDS, на который мы установили 1С:
Вот таким несложным путем мы смогли установить программу на виртуальный сервер.
Тарифные планы HighCPU
Если вы хотите поставить 1С на VDS, но еще не определились, какой сервер выбрать, то можете ознакомиться с тарифами от Timeweb, которые рассчитаны на крупные проекты.
- Зарегистрировал QIWI - кошелек.
- Дождался проверки моих данных. На это у QIWI ушло примерно 20 минут. Проверка нужна, чтобы бесплатно выпустить виртуальную карту. Если хотите остаться анонимным - не идентифицированному пользователю карту выпустят за 99 рублей.
- Запросил и получил бесплатную виртуальную QIWI - карту.
- Закинул на виртуальную карту 100 рублей.
- Завел учетную запись на AWS, указал виртуальную карту QIWI и телефон.
- Дождался проверки моих данных Amazon-ом и подключения возможностей пользоваться их сервисами. Ушло минут 40. При проверке платежеспособности виртуальной карты - Амазон списывает с нее 70 рублей (1 евро)
- На AWS создал в EC2 виртуальную машину (далее ВМ) t2.micro c ОС Ubuntu 14. Такой конфигурацией Амазон дает пользоваться бесплатно целый год после регистрации.
- Настроил ВМ для подключения через ssh, в т.ч. создал приватный PEM-ключ для него.
- Скачал на домашний ПК (далее ПК) putty для Windows
- Скачал на ПК PEM-ключ, созданный на шаге-8, сконвертировал его в формат для putty.
- Запустил ВМ, подключился к ней с ПК через ssh putty с использованием ключа из шага 10.
- Поставил на ВМ OpenVPN - сервер, создал файл конфигурации и приватный ключ для VPN
- Загрузил на ПК OpenVPN - клиент, создал файл конфигурации для него, скачал на ПК приватный ключ из 11-го шага.
- На ВМ установил iptables-persistent, разрешил IP forvard и сделал проброс 80 порта.
- Запустил OpenVPN на ВМ и подключился к нему с ПК. Опубликованная на ПК база стала доступна из всемирной сети.
Вот такой трудоемкий путь для любителя практических квестов.
Теперь обещанный короткий путь.
- Зашел на сайт birevia, нашел кнопку "получить статический адрес". Правда, я не успел нажать эту кнопку, т.к. через несколько секунд пребывания на сайте появилось всплывающее окно, в которое я ввел свой емейл и получил письмо с инструкциями. Думаю, кнопка "получить статический адрес" предназначена тоже для этого.
- По полученной инструкции вошел в личный кабинет birevia, выбрал нужный мне вариант подключения.
- На ПК, создал новое VPN-подключение к birevia, выбрал опции по инструкции и подключился к VPN. Я выбрал вариант PPTP-VPNа.
Все, ПК доступен входящим вызовам из интернета по указанному в инструкции IP-адресу. - Порт будет не 80, а в бесплатном варианте - из указанного в инструкции диапазона портов. Поэтому, в апаче или IIS нужно указать, чтобы помимо 80 порта, веб-сервер слушал еще порт из этого диапазона. Например, у меня на домашнем ПК в файле httpd.conf добавлена строчка "Listen 19555".
Способ с Amazon Web Services занял несколько часов, на способ через BiREVIA ушел десяток-другой минут.
Первый месяц birevia дает бесплатно, дальше для отладочных тестов 1С подойдет тариф с неправдоподобной ценой - 30 (тридцать) руб. в месяц. Мне для целей тестирования пока не понадобилось больше месяца.
Пошаговое руководство настройки Web сервера Apache на Windows. Не секрет, что файловые базы через веб-сервер будут работать намного шустрее, чем через обычный доступ к сетевому каталогу. Эффект особенно заметен, когда старые компы вообще не справляются с обычным сетевым доступом, регулярно выплевывают 1С. А доступ через веб сервер даже на компьютерах серии "Хлам" работает на ура!
Хоть 1С и не рекомендует использовать веб сервер в файловом режиме (а только в серверном) - тем не меннее для маленьких предприятий с 2-3 бухгалтерами использование веб сервера на новых конфигурациях с "управляемыми формами" (Бухгалтерия 3.0, Зарплата 3.0 и прочее) - позволяет организовать довольно быстрый доступ к базе сетевых компьютеров, даже если они компьютеры эти по сути уже старый хлам. Важно лишь, что бы основной компьютер с базами и веб сервером был приличный (например Core I3, 8 Гбайт оперативки и SSD диск).
Пошаговое руководство по настройке вебсервера 1С на Apache (включая файловый вариант баз данных)
1. Скачиваем установщик Apache
По каким-то причинам все новые версии (например 2.4.25) Apache перестал выкладывать в виде самораспаковывающегося дистрибутива. Для нас вполне приемлемо использовать не самый последний дистрибутив 2.2.25 - позволяющий получить удобный установщик и избежать дополнительных манипуляций.
Обращаю внимание - нам удобно использовать именно *.msi установщик
По рекомендации пользователя ogre2007 (спасибо, Владимир) выкладываю ссылку на
Выбираем “no ssl” дистрибутив, если базы будут открыты только внутри нашей локальной сети или “ssl” дистрибутив, если база будет открываться в интернете. Дополнительно про настройку ssl можно почитать в статье инфостарт 1С + Apache + SSL: почему вы должны использовать SSL (наглядная демонстрация)
В нашем примере будем настраивать сервер без ssl для использования только внутри локальной сети.
2. Запускаем скачанный установщик
Заполняем Network Domain: Localhost, Server name: Localhost
Нажимает NEXT, Setup type: Typical NEXT, NEXT, INSTALL
3. Проверяем запустился ли веб сервер
Мы должны увидеть страничку с надписью It Works !
Выясним IP адрес нашего компьютера в локальной сети. Для этого в нижнем правом углу (рядом с часами) находим иконку локальной сети, кликаем на ней правой кнопкой и открываем "Центр управления сетями и общим доступом"
И нажимаем кнопку "Сведения"
В моем случае адрес компьютера в локальной сети 192.168.0.189
Теперь возвращаемся в броузер и проверяем доступность страницы It Works по IP адресу Если снова увидели знакомую страницу It Works - все хорошо,
4. Проверяем доступность страницы с других компьютеров и настраиваем брандмауэр
Кликаем на раздел "Правила для входящих подключений", затем в правой части окна "Создать правило"
Выбираем "Для порта" - Далее, Протокол TCP, Опреленные локальные порты: 80, Далее
Устанавливаем "Разрешить подключение" - Далее,
Указываем произвольное имя, например "Веб сервер 80 порт для 1С". Готово.
Снова идем на другие компьютеры и убеждаемся, что теперь по IP адресу 5. Публикуем нашу базу на веб сервере.
Открываем конфигуратор нашей базы (Запуск 1С обязательно от имени администратора)
Переходим в Администрирование - "Публикация на веб-сервере"
Каталог - по сути произвольный каталог с файлами веб сервера для текущей базы. Желательно название каталога, что бы совпадало с названием базы (для простоты). Остальные флажки оставляем как на картинке. Смысл и необходимость каждого флажка можно будет разобрать позже.
Невозможно записать c:\Program Files (x86)\Apache . значит вы запустили 1С не от имени администратора. Закройте 1С и заново запустите (теперь "от имени администратора")
Специальные предложения
Хорошая статья, часто пользуюсь. Но прошу автора добавить информацию про более новый апач. Например 2.4, вот сайт для скачивания: https://www.apachelounge.com/download/ . Также если качаете х64, то будьте готовы поставить аналогичную х64 1с платформу и в httpd.conf отредактировать строку LoadModule _1cws_module "C:/Program Files/1cv8/8.3.9.2016/bin/wsap24.dll". Спасибо.
zolkin_i; Chaotic; LavrikovaJ; i.c.h; maksa2005; user1571738; psa247; al40in; evgenepc; Gendelf; Basil_Kudinov; criptid; Nubsdale; Thalt; vashkostya; BoltVl; tatakuka; maxst22; user696048_; Nefilimus; davdykin; nems; Tarlich; wowik; acanta; user705522_constantin_h; Aleksey81; + 27 – Ответить
(142) Не подскажите еще если база расположена на сервере 1с в кластере серверов возможно ли так же подключаться через браузер ?
(143) Да, конечно. Использование веб сервера официально фирмой именно для "серверных" (кластер+SQL) и предусмотрен.
Файловый вариант по мнению 1С и не предназначен для работы с веб сервером (то есть фирма не гарантирует корректную работу веб сервера в файловом режиме).
(0) Вот только одно непонятно, нафига апач то? Я ещё понимаю там, примеры были бы на убунту или цент ос. так нет же, все скрины с виндовз системы, в которую уже встроен веб сервер и ничего дополнительно качать не надо, надо только "галочки" в компонентах системы правильно расставить.
(5) + добавлю негативный опыт использования Апач.
в нескольких небольших офисах 5-6 рабочих мест базы опубликованы через Апач, конфигурации УТ 11, БП 3.0, ЗУП 3.0. Поначалу - все отлично. Где-то без проблем больше 2-х лет, где-то и 3-х месяцев толком не проработало. В одном офисе в течение 3-х месяцев пытался заставить нормально работать, там кстати, на Убунту стоял файловый сервер с базами 1С.
В конце концов начинались одни и те же проблемы - пользователь открывал документ, закрывал, но он почему-то оставался заблокированным. Плюс часто отваливалось соединение. И т.д. и т.п.
Танцы с бубном проблем не решали, иногда проблема пропадала где на неделю, где на 2. Потом "снова здорово".
Пробовали разные версии Апача, в том числе и 2.4. Что мертвому припарка.
Замена на штатный (для Windows 7 и поздние) IIS решило проблему совсем.
(6) у меня на IIS проблем при работе до 6-ти пользователей включительно не наблюдается (несколько разных офисов, с разным оборудованием).
(9) таких "инструкций" в интернете тьма тьмущая, в том числе и тут на инфостарте.
Кстати, поставили тут IIS. В браузере все работает, а платформа не запускается. Т.е. она даже запускается, но вываливается на любой попытке открыть окошко. И ладно бы платформа - так и мобильное приложение отказывается подключать внешнюю компоненту из общего макета. И ладно бы эти глюки были общими для IIS и Apache, так ведь нет же - поставил Apache и все заработало как надо: и платформа запускается, и МП внешнюю компоненту волшебно начал видеть. Так что я, лично, по поводу IIS очень плохо думаю, что-то там разработчики 1С в компоненте связки в последней платформе явно намудрили. Windows 10, IIS искаропки который, веб-сервисы работают, а МП и платформа - нет (запускаются, но дальше глюканы).
а как дела с блокировками обстоят? при такой организации работы на 5-6 пользователей страдать от излишних блокировок не будут?
а как дела с блокировками обстоят? при такой организации работы на 5-6 пользователей страдать от излишних блокировок не будут?
5-6 пользователей вполне смогут работать. Есть немалый опыт, когда до 10 пользователей успешно работало в файловой базе (сервер терминалов + ssd диск).
В нашем случае мы избавляемся от терминального сервера и получим приемлемое по производительности решение.
(10) 10 пользователей в терминале на файловой базе не равно 5-6 через web сервер. Принцип работы у веб сервера и обычной файловой базы другой. Разве веб сервер не блокирует целиком всю таблицу на время выполнения запроса пользователя?
Зачем выкладывать +100500 инструкций. А что делать если апач не запустился? Как посмотреть занятные порты? Как настроить безопасность? Раскройте чуть больше, чем всем уже и так известно.
(7) Кому-то и такого достаточно. Главное идея, о том, что можно задрать лёгкий сервис для отладки без использования серверов, а это уже плюс в репу! :)
Зачем выкладывать +100500 инструкций. А что делать если апач не запустился? Как посмотреть занятные порты? Как настроить безопасность? Раскройте чуть больше, чем всем уже и так известно.
Попробую ответить, Андрей, коль уж вы поинтересовались.. В какой то момент я обнаружил, что критиковать чужую работу - приносит мало пользы. А вот написать простую инструкцию как я обнаружил из своей публикации "УПП. Инструкция для бухгалтера по формированию НДС" по количеству одобрений- реально помогает людям решать свои задачи.
Кроме того инструкцию я писал прежде всего для своих сотрудников - стажеров. Потому как мы не нашли за вменяемое время что-либо настолько простое, что бы новичек смог бы бы сразу попробовать не имея багажа знаний.
(9) Сколько статей выдается в поиске по настройке НДС? По слову Apache - 113, из низ 50% это настройка web сервера, инфостарт в последнее время стал прямо личным блогом. Сколько статей начинается с "я это пишу чтобы не забыть для себя, так что строго не судите". Ваша статья о том же, сделайте себе локальную wiki и пишите туда все что угодно, или блог заведите.
Потому как мы не нашли за вменяемое время что-либо настолько простое, что бы новичек смог бы бы сразу попробовать не имея багажа знаний.
Зато там еще и про SSL! :)
psa247; Емельянов Алексей; starik-2005; Мах; Gendelf; jif; Anna_arbuz; svcoopers; monkbest; + 9 – Ответить
Если у вас есть желание научиться строить и поддерживать высокодоступные и надежные системы, рекомендую познакомиться с онлайн-курсом «DevOps практики и инструменты» в OTUS. Курс не для новичков, для поступления нужно пройти вступительный теcт.
Введение
Допустим, у вас небольшой рабочий коллектив и вам нужно работать с базами 1С. Одновременно там будет работать 2-3 человека, редко 5. В общем, в этих пределах. Вам надо купить как минимум 5 софтовых лицензий для сотрудников. Но куда их ставить, если у каждого сотрудника свой компьютер, а сервер терминалов поднимать не было в ваших планах. Во-первых, он денег стоит, во-вторых, его надо настраивать, обслуживать, защищать от угроз извне, если доступ будет по rdp. В общем, на маленьких масштабах это пушкой по воробьям. Чего уж говорить о клиент серверной установке 1С с использованием сервера баз данных mssql или postgresql. Для небольших компаний это перебор как по цене, так и функционалу. Я предлагаю решение значительно проще.
На помощь приходит публикация баз 1С на веб сервере с доступом пользователей через браузер. Лицензии ставятся на один компьютер. На него устанавливается веб сервер, публикуются базы 1С и настраивается доступ. Пользователям достаточно будет передать только ссылку для работы в базах. Это удобная схема работы, плюс в целом быстродействие файловых баз при одновременной работе нескольких пользователей будет выше. Ко всему прочему еще и пользователям на компьютер не нужно ставить платформу и обновлять ее.
Схема установки
Я предлагаю следующую схему работы с базами 1С при их публикации. Доступ нужен будет отовсюду через интернет. Для этого арендуется выделенный сервер, например в selectel. Достаточно будет сервера примерно за 4000р. с 2 ssd дисками и 32g оперативной памяти. Туда ставится гипервизор proxmox. И настраиваются минимум 3 виртуальные машины:
Это минимальный набор виртуалок. Сюда же можно добавить мониторинг либо еще какой-то сервис, необходимый вашей компании. Например чат или ip телефония. Производительности дедика хватит для небольшой компании.
Публикация баз 1С на веб сервере
Идем на виртуалку с windows и работаем там с 1С. Кстати, если хотите обойтись вообще без windows, то есть возможность настроить публикацию баз 1С на linux на примере Centos.
Для начала устанавливаем технологическую платформу и не забываем выбрать Модули расширения веб-сервера.
Создаем там необходимую вам базу данных. Я покажу на примере публикации типовой базы Бухгалтерия 3.0. При первом запуске необходимо будет установить на этот компьютер софтовые лицензии. Они будут использоваться при доступе к базам через браузер.
Установка и настройка Apache 2.4 в Windows
Если вы настраиваете apache на Windows Server, то скорее всего 80-й порт у вас будет занимать Служба веб-публикаций (World Wide Web Publushing Service) или W3SVC. Ее можно остановить и отключить.
Для того, чтобы точно узнать, кто занимает тот или иной порт в Windows, можно воспользоваться командой в консоли:
Дальше через диспетчер задач смотрите, какой процесс имеет указанный pid. В моем случае это apache. Если это какой-то системный процесс, у него будет pid 4.
Итак, конфиг apache отредактировали, порт 80 указали. Теперь установим apache 2.4 как службу windows. Для этого открываем командную строку от администратора (это важно), переходим в каталог C:\Apache24\bin и выполняем:
Вы можете увидеть ошибку, связанную с отсутствием fqdn имени у сервера. Но реально это не представляет проблемы, можно игнорировать.
Переходим в оснастку windows Службы и запускаем Apache2.4.
Дальше выполняем непосредственно публикацию базы 1С через web сервер apache. Открываем базу через Конфигуратор, выбираем Администрирование -> Публикация на веб-сервере. В качестве каталога можно указать тот же, где лежит сам файл с базой.
Все настройки можно оставлять дефолтными. Сохраняем изменения. После этого должен быть выполнен перезапуск службы apache автоматически. Но если платформа была запущена не от администратора, то у нее не хватит прав это сделать. Надо сходить в Службы и перезапустить вручную.
Теперь с ней можно работать через браузер, но пока только с этого компьютера, либо по локальной сети. Далее сделаем так, чтобы доступ был и через интернет.
Доступ к файловой базе 1с через интернет в браузере
На данную виртуальную машину должны быть проброшены 80 и 443 порты с внешнего ip адреса. Как это будет сделано, зависит от ваших сетевых настроек. В случае с proxmox я настраиваю подобный проброс с самого хоста с помощью iptables. Пример настройки iptables читайте в отдельной статье. Там есть и про проброс. Не буду на этом задерживаться в статье про 1С.
Теперь нам нужно получить сертификат. Для этого запускайте в консоли certbot и следуйте инструкциям. Перед этим остановите nginx. Для быстрого получения сертификата certbot предлагает временно запустить свой веб сервер на 80-м порту.
В данном случае 10.10.10.11 - локальный ip адрес виртуальной машины с windows, где опубликована база 1С через apache. Доступ к 1С сразу же закрыт отдельным паролем и механизмом веб сервера auth basic. Создадим файл с именем пользователя и паролем, указанным в конфиге.
Вот и все. Можно относительно безопасно выставлять такую конструкцию в интернет. В случае необходимости можно настроить fail2ban, если кто-то надумает перебирать пароли или просто выполнять непонятные запросы к веб серверу с опубликованными базами. При желании в том же nginx с помощью директив allow и deny можно ограничить доступ к виртуальному хосту с базами на уровне ip адресов. Это на случай, если не умеете делать то же самое на фаерволе. В nginx проще и быстрее.
Не забудьте настроить автоматическое обновление tls сертификатов. Как это сделать, я рассказываю в статье с настройкой web сервера. Ссылку на нее я дал выше.
Какие бывают проблемы с работой в 1С через браузер
В таком режиме у меня уже пару лет работают несколько серверов с 1С. Иногда возникают нюансы с доступом через браузер. Например, не настроить обмен между базами, не зная их локальных путей. Бухгалтера сами его не смогут настроить. Им нужно будет передать информацию по директориям с базами. Понятное дело, что и обновить платформу они сами не смогут, так как нужно будет обновлять и публикацию баз. Когда вы сами подключены через браузер, сделать это невозможно.
Так что некоторые вещи, которые обычно бухгалтера в небольших компаниях способны сделать сами, придется делать тому, кто обслуживает этот сервер. Но бонусом идет то, что на самих пользовательских компьютерах ничего настраивать не надо. Вы просто передаете пользователю адрес в интернете и учетные данные. И он начинает работать в базе 1с. Платформу ставить не надо, как и решать вопрос с лицензиями на клиентах.
Сделать это надо в cmd с правами администратора. И повторять каждый раз при обновлении платформы, не забывая указать путь к новой версии файла.
Ошибка совершенно не гуглится, так что потратил много времени на ее решение. Помог режим отладки в chrome. Я просто проверил все запросы и нашел ошибочные с кривыми урлами. И так и сяк пытался их решить редиректами на веб серверах, но в итоге пришлось в apache переехать на 80-й порт и ошибка ушла.
Ну и еще одно отмечу. Иногда apache зависает или начинает сильно тупить. Обычно после долгого аптайма в несколько недель. Я подробно не разбирался в проблеме. Предпочел просто перезапускать его раз в сутки ночью. Для этого сделал обычный bat файл и настроил запуск через планировщик Windows.
Понятно, что это грубый костыль, но проблему решает. Ночью все равно с 1С никто не работает. Это история не про отказоустойчивость, резервирование и работу 7/24/365.
Подключение через Платформу 1С:Предприятие к базе 1С, опубликованной в веб
Упомяну одну важную вещь, про которую я сам узнал не сразу. С опубликованной в web базой 1С не обязательно работать через браузер. Можно подключиться через обычную платформу, если она у вас установлена на компьютере. Причем все отлично заработает даже с дополнительной basic auth в виде еще одной авторизации.
Чтобы добавить такую базу в платформу, достаточно указать, что тип расположения информационной базы - веб-сервер.
При подключении к такой базе вам сначала нужно будет ввести пароль на доступ к веб сайту, а потом уже появится авторизация самой 1С. Удобно выходит. И субъективно кажется, что через платформу 1С работать с опубликованной базой немного быстрее. Быстрее отклик на действия пользователя.
Бэкап баз 1С
Для полноты картины расскажу, как легко и быстро забэкапить файловые базы 1С. Пошаговую инструкцию не буду писать, так как у всех свои ситуации и каждый делает по-своему. Я на словах расскажу, как можно поступить с архивными копиями. Сам я каждый раз придумываю разные решения для бэкапов 1С в зависимости от обстоятельств.
Для меня важно держать где-то недалеко от рабочего сервера несколько архивных копий баз, чтобы их можно было оперативно загрузить на сервер и работать с ними. Для этого у меня на этом же гипервизоре отдельная виртуальная машина исключительно для бэкапов. Доступ к ней максимально ограничен. Она сама забирает все бэкапы к себе. С windows машины к ней доступа нет. Сделано это для простейшей защиты от шифровальщиков. Если какой-то вирус попадет на сервер и зашифрует базы 1С, я очень быстро смогу их восстановить из архивных копий, которые хранятся на этом же гипервизоре, только в другой виртуальной машине.
На windows сервере можно просто расшарить директорию с базами 1С, а на виртуалке для бэкапов подключить ее. Я обычно использую Linux систему для этого. В ней монтирую шару по smb. Как это сделать рассказываю в отдельной статье - Как быстро подмонтировать сетевой диск в Linux. После того, как подключили папку с базами 1С к бэкап серверу, можете делать с ними все, что угодно. Например, куда-то копировать с помощью rsync и сохранять изменившиеся базы. Подробно схему бэкапов с помощью rsync описываю тоже отдельно - настройка rsync для бэкапа. Обязательно одну копию держу локально на сервере с бэкапами, вторую отправляю куда-то в удаленный приемник. После этого шару отмонтирую. Она подключена только для копирования баз с windows машины на linux.
Так же для бэкапов вы можете использовать какое-нибудь S3 хранилище, например у того же Selectel. По моим недавним сравнениям по ценам там наиболее выгодные условия из известных хостеров. По крайней мере я дешевле не нашел. Заливать бэкапы в S3 можно с помощью утилиты rclone. У Selectel еще очень удобно сделано в плане настройки времени хранения данных в контейнерах. Я обычно создаю 3 разных контейнера:
- Day - в него заливаются архивы каждый день. Срок хранения файлов в этом контейнере - 7 дней. Настраивается это штатно в панели управления. На стороне хоста, с которого заливаются данные, ничего делать не надо.
- Week - архивы заливаются раз в неделю и хранятся 31 день.
- Month - архивы заливаются раз в месяц и хранятся условно бесконечно.
Таким образом мы просто каждый день льем файлы в S3 в разные контейнеры, а там они автоматом ротируются. Мы всегда имеем 7 последних копий, 4 недельные и помесячные. Удобная схема и не очень дорогая. Стоимость хранения можете сами прикинуть по калькулятору хранилища.
Еще один вариант бэкапа - копировать базы по nfs на какой-то сервер. В общем, тут вариантов может быть очень много. Я для этого и использую такую схему - подключение директории с базами к linux серверу, а там уже возможности по работе с бэкапами безграничные. Можно на тот же Яндекс.Диск их передавать. Вот тоже статья по этому поводу - бэкап на яндекс диск. Правда там речь идет про сайт, но принципиальной разницы нет.
Заключение
Это все, что я хотел рассказать по поводу публикации файловых баз 1С в интернет. Постарался дать не только технические данные но и свои личные подробности, основанные на опыте подобных эксплуатаций. Я хоть и пытаюсь дистанцироваться от 1С, но она настолько популярна в России, что так или иначе сталкиваешься с этим продуктом. Да я и свою бухгалтерию ИП сам веду в 1С :)
Если захотите себе настроить что-то подобное, то обращайтесь ко мне. Я могу подобрать подходящее решение под ваш бюджет и выполнить настройку. Это будет дешевле быстрее и скорее всего лучше, чем вам настроят через франчайзи. По крайней мере то, что я видел, чаще всего было настроено так себе. Без акцента на безопасность и удобство, лишь бы работало.
Если у вас есть желание научиться строить и поддерживать высокодоступные и надежные системы, научиться непрерывной поставке ПО, мониторингу и логированию web приложений, рекомендую познакомиться с онлайн-курсом «DevOps практики и инструменты» в OTUS. Курс не для новичков, для поступления нужны базовые знания по сетям и установке Linux на виртуалку. Обучение длится 5 месяцев, после чего успешные выпускники курса смогут пройти собеседования у партнеров.
Проверьте себя на вступительном тесте и смотрите подробнее программу ссылке.
Разработка сайта подразумевает под собой целую серию задач. От создания HTML-разметки и написания скриптов до аренды сервера, покупки собственного доменного имени и размещения ресурса в интернете.
В этой статье поговорим о том, как взять уже готовый, функционирующий ресурс и разместить его в интернете. Так, чтобы его могли посетить другие люди.
В дальнейших инструкциях я подразумеваю, что вы уже разработали сайт. У вас есть дизайн, логотип, готовые скрипты и прочие элементы, необходимые для запуска ресурса на локальной машине. Речь пойдет исключительно о публикации страниц в сети. Подробнее о создании ресурса с нуля можно почитать в соответствующем материале.
Выбираем хостинг
Начать стоит с базы для вашего сайта. То есть места, где он будет размещен. Он должен базироваться на подходящем хостинге.
Хостинг — это сервер (или его часть), на котором можно разместить файлы своего веб-ресурса или приложения. Сервер — это компьютер, который работает без перерыва, чтобы обеспечить пользователям круглосуточный доступ к вашему продукту. И тем, и другим занимаются специальные организации-провайдеры, поддерживающие сотни серверных ПК и выделяющие вебмастерам ресурсы под их проекты.
Нужно выбрать наиболее надежный и производительный хостинг, с хорошей репутацией и не слишком дорогой.
Далее буду рассказывать о размещении сайта на примере Таймвэб, но этот процесс у других хостингов практически не отличается.
Разместите сайт на хостинге с первоклассной поддержкой
От 119 рублей в месяц
Размещаем сайт на виртуальном хостинге
Сначала разберем публикацию на виртуальном хостинге. Это наиболее простой и доступный способ быстро «поднять» ресурс с минимальными затратами времени и сил.
Виртуальный хостинг — это папка на удаленном ПК под управлением Linux, которой заведует хостинг-провайдер. Он выдает вам ограниченные права на эту папку, чтобы вы могли там разместить файлы своего проекта, тем самым превратив ее в подобие сервера. После создания и регистрации адреса к этому серверу можно будет подключиться извне и пользоваться, как любыми другими страницами в интернете.
Создать и разместить страницу на виртуальном хостинге Timeweb можно двумя способами:
- Автоматически — когда большая часть файлов, включая рабочую CMS, попадает на сервер еще на этапе аренды.
- Вручную — когда вы покупаете у хостинга только папку и сами решаете, что с ней делать.
Ручной режим настройки
Как я уже отметил выше, под ручным режимом понимается настройка практически с нуля. Мы арендуем пустой виртуальный хостинг, в котором будет только папка public_html. Будем сами загружать на удаленный ПК HTML-файлы, скрипты, стили и медиаконтент. Создадим и зарегистрируем новое доменное имя через сервис Таймвэб. При необходимости настроим CMS.
Такой метод публикации дает больше гибкости. Можно установить любую CMS на свой выбор, не опираясь на список CMS, доступных в каталоге хостинга. К примеру, Timeweb не предлагает автоматически устанавливать DataLife Engine, но если арендовать пустой ВХ, то будет возможность сделать это самостоятельно.
Регистрируемся на хостинге
Зарегистрируем учетную запись в Timeweb и арендуем ВХ с подарком.
- Кликаем по строчке «Хостинг».
- В выпавшем списке опций выбираем «Виртуальный хостинг».
- Выбираем подходящий тариф и нажимаем на «Заказать» под одним из них.
- Указываем персональные данные для регистрации и переходим к оплате услуг провайдера.
- Кликаем по иконке в виде кошелька в верхнем правом углу экрана.
- Выбираем удобный способ оплаты (поддерживаются банковские карты и системы цифровых платежей Apple Pay, Google Pay).
- Открываем раздел «Бонусы и промокоды» в боковой панели интерфейса Timeweb.
- Кликаем по кнопке «Активировать» напротив строчки «Бесплатный домен в зоне…».
Сразу после регистрации вы получите 10 дней бесплатного пробного периода. Чтобы получить домен в подарок, придется оплатить услуги хостинга на год вперед. Для этого вверху есть иконка с кошельком.
Регистрируем домен
Чтобы его зарегистрировать:
- Открываем раздел «Домены и поддомены» в панели управления хостинга.
- Переходим к подменю «Администраторы доменов».
- Кликаем по кнопке «Добавить администратора».
- Вводим персональные данные администратора и жмем на «Создать».
- Возвращаемся к предыдущему окну и кликаем по пункту «Зарегистрировать домен».
- Вписываем выбранное имя в поисковую строку. Система проверит, доступен ли выбранный вариант. Если недоступен, то хостинг предложит один из похожих, но свободных вариантов. Если доступен, то можно будет продолжить, нажав на «Зарегистрировать».
- Листаем открывшуюся страницу вниз, ищем строчку «Сумма к оплате» и выбираем вариант оплаты бонусами.
Готовим файлы сайта к загрузке на хостинг
У нас есть рабочий адрес в сети. Его можно указать в адресной строке браузера и попасть на соответствующий ресурс. Правда, пока там пустовато. Красуется запись о том, что домен припаркован у провайдера Timeweb. Нужно перенести на сервер файлы, созданные в ходе разработки.
Перед тем как залить сайт на хостинг, надо сжать его компоненты. Подойдет стандартный zip-архиватор, встроенный в систему. Так проще перенести все необходимые компоненты на удаленный ПК скопом (лучше при этом не прятать их в отдельную директорию).
Ну и не помешало бы навести в них порядок перед началом. Объединить несколько CSS в один, провести рефакторинг скриптов, подчистить лишние строки в HTML и т.п.
Как почувствуете, что готовы, переходите к следующему шагу.
Загружаем файлы через встроенный файловый менеджер Timeweb
Timeweb позволяет загружать файлы на ВХ через панель управления с помощью браузера.
- Открываем «Файловый менеджер» в панели управления Таймвэб.
- Переходим в директорию public_html (в базовом виртуальном хостинге отсутствуют другие каталоги).
- Переносим наш архив с файлами в окно браузера, чтобы он загрузился на сервер. Спустя некоторое время он появится в хранилище у провайдера. Длительность загрузки зависит от скорости подключения к сети, производительности виртуального хостинга и размера загружаемого архива.
- Выделяем его, кликнув левой кнопкой мыши один раз.
- Затем нажимаем на «Архиватор» в верхней части интерфейса файлового менеджера.
- В выпавшем списке выбираем пункт «Разархивировать».
Готово. Теперь архив можно удалить, а загруженные файлы использовать для работы с сайтом. Если в них содержался уже рабочий, протестированный в локальной среде, ресурс, то дополнительных действий не потребуется.
Загружаем файлы через FTP-клиент
Это дополнительная инструкция для тех, кто использует хостинг без встроенного файлового менеджера в панели управления.
- Открываем FTP-клиент (подойдет Explorer в Windows или Finder в macOS, но лучше использовать специализированные решения в духе Filezilla).
- Подключаемся к по протоколу FTP к своему виртуальному хостингу (адрес можно узнать на главной странице панели управления или в техподдержке провайдера).
- Авторизуемся, указав пароль, выданный хостингом.
- Копируем архив на сервер.
- Распаковываем архив встроенным в FTP-клиент архиватором.
- При необходимости выдаем права на чтение и запись загруженных директорий и документов.
Автоматический режим настройки
У Таймвэб есть все для развертывания ресурса с нуля. Достаточно выбрать правильный раздел в меню и ввести персональную информацию. Полноценный ресурс с популярной CMS и домен впридачу.
- Открываем официальную страницу хостинга.
- Кликаем по подпункту «Хостинг» в левом верхнем углу.
- Во всплывшем списке выбираем пункт «Хостинг для CMS».
- Указываем персональные данные для входа в систему и управления сервером.
Все, осталось зарегистрировать имя и загрузить файлы. Можно пользоваться!
Размещаем сайт на виртуальном выделенном сервере (VDS)
Это инструкция для тех, кто арендовал не папку на сервере, а отдельную виртуальную машину, которой можно управлять как полноценным удаленным ПК без ограничений. Чтобы управлять VDS, нужны SSH-клиент или проприетарная панель управления. Например, ISPmanager или VestaCP.
Я покажу, как разместиться на хостинге с помощью нее, так как ISPmanager довольно популярна, удобна и по умолчанию поддерживается большинством хостингов, включая Таймвэб.
Приобрести и установить ISPmanager в Таймвэб можно на стадии аренды, указав панель в качестве дополнительного необходимого программного обеспечения.
Создаем домен и регистрируем его
Разберем вариант регистрации стороннего домена и добавления его к VDS через ISPmanager.
- Покупаем домен на соответствующем ресурсе.
- Регистрируем домен с помощью специального сервиса-регистратора. Купить домен можно, например, тут.
- Настраиваем DNS-сервер для вновь созданного доменного имени (подробная инструкция тут).
- Открываем ПУ.
- Кликаем по меню «Домены».
- Нажимаем на ОК, чтобы сохранить внесенные изменения.
На регистрацию уходит время. Поэтому сразу после настройки переходить по ссылке и надеяться увидеть что-то работоспособное не стоит. Возможно, ожидание затянется до 72 часов.
Создаем базу данных
Если вам нужна БД, то:
- Открываем ПУ ISP.
- Выбираем «Инструменты».
- Переходим в пункт «Базы данных».
- Вводим пользовательские данные (они касаются самой БД и ее администратора; там должно быть имя, тип кодировки, пароль от учетной записи и т.п.)
- Нажимаем на ОК, чтобы сохранить внесенные изменения.
Этот шаг нужен тем, кто планирует размещать на хостинге полноценный ресурс. Если же у вас нет ничего, кроме простенького лендинга с одним статичным HTML, то база данных не понадобится.
Загружаем файлы сайта
Большую часть ручной работы мы проделали. Теперь надо перенести HTML, CSS и JavaScript-файлы на удаленную «машину» провайдера, чтобы наконец привести их в рабочий продукт, готовый для посещения.
- Запускаем панель управления ISP.
- Открываем пункт «Система».
- Переходим в подпункт «Менеджер файлов».
- Нажимаем на «Закачать» в верхней части интерфейса.
- Выбираем тип файла «Файл с локального компьютера».
- Нажимаем на «Обзор» и указываем путь до архива с данными вашего проекта.
- Кликаем по «ОК», чтобы загрузить сайт на сервер.
- Затем с помощью встроенного в ПУ архиватора распаковываем файлы в корневой каталог. При необходимости выдаем права на чтение и запись файлов.
Как разместить сайт на хостинге бесплатно?
Во-первых, для этого есть куча бесплатных хостинг-провайдеров. Правда, зачастую они работают не так быстро и надежно, как платные аналоги. Но есть те, что предлагают услуги по бартеру. Допустим, вы размещаете у себя на главной странице баннеры хостинга, а он за это дает бесплатный VDS со средними характеристиками.
Во-вторых, есть GitHub. На нем можно опубликовать статичный лендинг без динамических файлов, даже не имея платной учетной записи. А еще Google App Engine — бесплатная платформа для размещения веб-приложений в сети (это что-то в духе VDS, только на мощностях Google).
В-третьих, можно разместить свой код в веб-среде для разработки. Например, CodePen или JSFiddle. Туда можно вписать и скрипты, и стили. Можно как тестировать на нем свой код, так и демонстрировать его заказчикам, если ресурс делался для них.
Как видите, размещение сайта на хостинге — это несложно. Есть даже бесплатные способы выложить сайт в интернет для несложного тестирования. А с провайдерами в духе Таймвэб все сводится к паре кликов и выбору названия для вашей страницы, даже если речь идет о масштабном коммерческом продукте.
Читайте также: