Отправить эту статью на мою почту
Как установить веб-сервер Apache и опубликовать 1С на Apache: HTTP-сервис и базу 1С Предприятие 8.3? Читайте пошаговую инструкцию…
Эта статья является логическим продолжением моей предыдущей статьи – «Публикация базы 1С и HTTP-сервиса в интернете на IIS», где я рассказал, как публиковать 1С на веб-сервер Microsoft IIS. Если вы ее не читали, настоятельно советую начать с неё, а потом вернуться сюда. В этой статей буду использовать туже базу 1С:Управление торговлей 11.4 (демо-версия) с нашим нетиповым HTTP-сервисом, который просто возвращает слова «Все хорошо» при обращении к нему.
Мое мнение на этот счет простое. Если вы в качестве сервера используете Microsoft технологии, в частности Windows Server, то и нужно использовать серверные компоненты созданные Microsoft, тем более веб-сервер IIS по умолчанию включается в состав Windows Server и устанавливается без каких-либо дополнительных дистрибутивов. Все серверные компоненты Microsoft создавались для работы друг с другом, а значит максимально оптимизированы для работы между собой. Тоже самое верно и для серверной архитектуры на Linux, если вы используете Linux, то и другие серверные компоненты, я считаю, должны быть изначально созданы для Linux, например, веб-сервер Apachе, СУБД PostgreSQL и другие…
С другой стороны, считается что веб-сервер Apache для Windows более легковесный, чем родной веб-сервер IIS, а значит немного быстрее работает, проще устанавливается и т.п. Я за эксперименты и выбор правильного и удобного решения. Поставьте вначале IIS, поработайте с ним, потом удалите и поставьте Apache, после, уже принимайте решение где вам проще и удобнее работать, а главное, где система быстрее и возникает меньше ошибок.
Я буду использовать в качестве операционной системы Windows Sever 2012 R2, что и вам советую, но можно установить веб сервер Апачи и на не серверные ОС, например, на Windows 10 или Windows 7. При этом на сервере могут работать люди, не бойтесь, вы им не помешаете.
Для загрузки дистрибутива веб-сервера перейдем по ссылке https://www.apachelounge.com/download/ и загрузим последнюю версию дистрибутива, на данный момент (август 2020 года) это версия «Apache 2.4.46» для Win64, название файла сейчас выглядит так – «httpd-2.4.46-win64-VS16.zip».
Разархивируем архив, например, на рабочем столе.
Если откроем файл «readme.txt» там увидим, что разработчики советуют перенести каталог из архива «Apache24» в корень диска «С», так и сделаем, и разумеется, что мы должны работать под пользователем администратором системы ОС Windows.
Теперь нам нужно запустить веб сервер Apache в виде службы Windows, для этого еще раз обратимся к файлу «readme.txt», там указано, что для этого нужно в командной строке (запущенной из под администратора) указать следующую команду:
"C:\Apache24\bin\httpd.exe" -k install
Теперь перейдем в список служб, нажмите Пуск и в поле поиска введите «Службы».
В списке служб мы увидим установленную службу «Apache2.4». Запустите её.
Откроем любой веб-браузер на текущем сервере и убедимся, что по адресу http://127.0.0.1 нам отвечает веб сервер Apache текстом: “It works!”.
После того как веб-сервер Apache успешно установили, пробуем опубликовать базу 1С и HTTP-сервисы.
Нажимаем правой кнопкой мыши по ярлыку 1С и запускаем от имени администратора. Выбираем публикуемую базу 1С и заходим в режим конфигуратора.
Далее в конфигураторе пункт меню «Администрирование» - «Публикация на веб-сервере…».
Устанавливаем флаги: публиковать тонкий клиент и веб-клиент, а также на закладке «HTTP-сервисы» ставим флаг на против нужного HTTP-сервиса. Убедимся что в поле «Каталог» указан путь, если его нет, то укажите, например, такой: «C:\MyWeb1C», предварительно создайте каталог «MyWeb1C» в корне диска «С». В поле «Веб-сервер» должно быть указано «Apache …» (где «…» номер установленной версии веб сервера Apache). Запомните название вашей публикации из поля «Имя» (пригодится ниже). Нажмите кнопку «Опубликовать».
Хоть 1С и предложит перезапустить веб сервер Apache сразу после нажатия кнопки «Опубликовать», и даже если мы согласимся, то толку не будет… Нам необходимо вручную перезапустить службу «Apache2.4», для этого снова откройте список служб и перезапустите службу «Apache2.4».
Теперь проверим работу 1С через веб. Откройте ваш веб-браузер и укажите адрес: http://127.0.0.1/DemoTrd (где «DemoTrd» это название вашей публикации, см. выше).
Если всё сделали правильно, то вы увидите загрузку вашей базы 1С через веб.
Теперь проверим работу HTTP-сервиса, для этого в адресной строке веб-браузера напишите адрес: http://127.0.0.1/DemoTrd/hs/test (где «DemoTrd» это название вашей публикации, см. выше, и «test» - корневой URL вашего HTTP-сервиса). Если 1С HTTP сервис вы использовали тот который мы рассматривали в моей предыдущей статье, то в браузере вы увидите слова «Все хорошо».
Для того, чтобы открывать 1С и главную страницу веб сервера Apache из интернета, необходимо открыть порт 80 на брандмауэре вашего Windows сервера.
Для этого нажмите меню Пуск и поле поиска впишите слово «брандмауэр», обычно достаточно только первых двух букв
В разделе «Правила для входящих подключений» создайте новое правило:
Теперь если IP адрес вашего сервера внешний и статический (это можно узнать у вашего системного администратора и интернет-провайдера), то открывать веб сервер Apache, вашу базу 1С и HTTP-сервис через интернет можно будет с любого компьютера подключенного к интернету, для этого в интернет-браузере вводите внешний статический IP-адрес сервера вместо 127.0.0.1 в адресах указанных выше.