Автор Тема: Помогите опубликовать базу на веб-сервере  (Прочитано 22953 раз)

Оффлайн acrk

  • Завсегдатай
  • *
  • Сообщений: 199
    • Email
Алт Линукс 7, рабочая станция.
Установлена 1С 8.3.13.1809
запущен веб-сервер apache2
назначены ссылки (симлинки) на /etc/apache2 и /etc/apache2/apache2.conf (эти файлы и папки требуется 1с для поиска веб-сервера).
Даны все права на файл /etc/apache2/apache2.conf (1С туда пишет строку)
При попытке опубликовать базу из конфигуратора - ошибка.
Что еще можно сделать?

Оффлайн yaleks

  • Мастер
  • ***
  • Сообщений: 6 222
а то что написано в https://www.altlinux.org/1C не помогает?

Оффлайн z79av

  • Давно тут
  • **
  • Сообщений: 91
Конфигуратор не видит установленный Apache. Публикуйте командой webinst. Работает.

Оффлайн acrk

  • Завсегдатай
  • *
  • Сообщений: 199
    • Email
Я в линуксе новичок ....
Придется попробовать через webinst...
(Через конфигуратор-то проще было бы.)

Оффлайн acrk

  • Завсегдатай
  • *
  • Сообщений: 199
    • Email
Ну Webinst я нашел в папке /opt/1C/v8.3/x86_64
А как его запустить ?

Оффлайн z79av

  • Давно тут
  • **
  • Сообщений: 91
Примерно так. Актуально для P8. На P7 не проверял.
Создаем файлик конфигурации, дабы 1С не гадила в httpd2.conf
#touch /etc/httpd2/conf/extra-available/1c.confПубликуем базу
#/opt/1C/v8.3/x86_64/webinst -publish -apache24 -wsdir UT1 -dir /var/www/UT1 -connstr "File=/bases1c/UT1;" -confpath /etc/httpd2/conf/extra-available/1c.conf
#ln -s /etc/httpd2/conf/extra-available/1c.conf /etc/httpd2/conf/extra-enabled/1c.conf
А вот этот файл должен быть доступен апачу на чтение
#chmod o+r /var/www/UT1/default.vrd
-apache24 - версия веб-сервера.
-wsdir - имя алиаса публикации, по которому к базе следует обращаться из браузера.
-dir - путь публикации, директория в рабочем каталоге веб-сервера
-connstr - строка соединения с базой, можно подсмотреть в списке баз 1С в нижней части окна.
-confpath - путь к конфигурационному файлу веб-сервера. Можно указать, конечно, и стандартный httpd2.conf.

Оффлайн acrk

  • Завсегдатай
  • *
  • Сообщений: 199
    • Email
Цитировать
Примерно так. Актуально для P8. На P7 не проверял.
Создаем файлик конфигурации, дабы 1С не гадила в httpd2.conf
Код: [Выделить]

#touch /etc/httpd2/conf/extra-available/1c.conf

Публикуем базу
Код: [Выделить]

#/opt/1C/v8.3/x86_64/webinst -publish -apache24 -wsdir UT1 -dir /var/www/UT1 -connstr "File=/bases1c/UT1;" -confpath /etc/httpd2/conf/extra-available/1c.conf
#ln -s /etc/httpd2/conf/extra-available/1c.conf /etc/httpd2/conf/extra-enabled/1c.conf

А вот этот файл должен быть доступен апачу на чтение
Код: [Выделить]

#chmod o+r /var/www/UT1/default.vrd

Сделал так, результат тот же:
sh: httpd: команда не найдена

Публикация выполнена

Ответ 1С:
Полагаю, что в консольной утилите webinst все запрограммировано на вызов httpd,
у Вас же сам сервис называется httpd2.
Нужно сделать жесткую ссылку, чтобы при обращении к httpd все перенаправлялось на httpd2.

Я им написал, почему вызывают httpd, а не httpd2 (мы же указываем в параметрах, что апач 2).
Ответ 1С:
По крайней мере под Windows - Apache22 - имеет название httpd.exe.
Да и на сайте httpd.apache.org - тоже везде фигурирует httd.
Не совсем понимаю для чего на Alt Linux сделали изменения в имени...

В связи с этим два вопроса
1. Действительно ли это Alt Linux по своей инициативе сменил имя сервиса апач2 ?
2. Как создать нужную жесткую ссылку (на какой файл), чтодбы команда httpd соответствовала команде httpd2 ?


Оффлайн Skull

  • Глобальный модератор
  • *****
  • Сообщений: 19 908
    • Домашняя страница
    • Email
В Альте собираются и первый Apache с httpd и второй с httpd2. Это общая практика дистрибутивов.
А вот вызывать httpd вместо apachectl – показатель некомпетентности разработчиков 1С.
Андрей Черепанов (cas@)

Оффлайн acrk

  • Завсегдатай
  • *
  • Сообщений: 199
    • Email
в 1С я передам.
И все-таки....
Надо же пробовать разные варианты.
1. Как (на какой файл) назначить жесткую ссылку, чтобы при обращении к httpd обращение шло к httpd2 ?
2. Как установить и запустить просто Апач вместо Апач2 ?
3. Как правильно должны были сделать специалисты 1С ?
Я вот набрал  apachectl и получил
-bash: apachectl: команда не найдена
Значит этот apachectl надо устанавливать дополнительно к серверу Апач ?

Оффлайн z79av

  • Давно тут
  • **
  • Сообщений: 91
У вас же написано, что публикация выполнена - и она на самом деле выполнена. На то, что 1С не может найти httpd - не обращайте внимания.
Если же опубликованная база так и не заработала - искать ошибку надо в других местах.

Оффлайн acrk

  • Завсегдатай
  • *
  • Сообщений: 199
    • Email
Приступил очередной раз... включил компьютер.
Сначала сразу хотел в браузере строку набрать "localhost/demobase" - получил "Попытка соединения не удалась ..."
Пытаюсь сделать публикацию через webinst...
Цитировать
[root@comp-core-i3-c35e50 logs]# /opt/1c/v8.3/x86_64/webinst -publish apache22 -wsdir demobase -dir /home/admin/Public/BP30 -connstr "File=""/home/admin/Public/BP30"";" -descriptor /home/admin/wwww
-bash: /opt/1c/v8.3/x86_64/webinst: Нет такого файла или каталога
Почему нет файла-то ? он на месте.

Оффлайн Skull

  • Глобальный модератор
  • *****
  • Сообщений: 19 908
    • Домашняя страница
    • Email
Он имеет права на выполнение? Если это скрипт, он содержит правильный шебанг?
Андрей Черепанов (cas@)

Оффлайн acrk

  • Завсегдатай
  • *
  • Сообщений: 199
    • Email
Как много новых слов ! (как определить, скрипт ли это, и что такое шебанг ?)
В прошлый-то раз выполнялся!
Может я какие-то симлинки пытался отменить (безуспешно), но "/opt/1C/v8.3/x86_64" вроде не трогал.

Оффлайн yaleks

  • Мастер
  • ***
  • Сообщений: 6 222
Как много новых слов ! (как определить, скрипт ли это, и что такое шебанг ?)
первая строчка в этом файле какая?

Оффлайн z79av

  • Давно тут
  • **
  • Сообщений: 91
Следите за регистром. "1с" и "1С" - это разные вещи.