27.02.2025
Итак, поставили на AlmaLinux 1C сервер+PostgreSQL+Apache.
Всё стандартно - далее для публикации базы необходимо создать папку
/var/www/html/BASE/ и выполнить команду, вида:
./webinst -apache24 -wsdir BASE -dir '/var/www/html/BASE/' -connStr 'Srvr=SERVER;Ref=BASE;' -confPath /etc/httpd/conf/httpd.conf
где:
BASE - имя вашей базы в кластере 1С
SERVER - имя сервера, если это локальный сервер, можно указать localhost
И вроде всё должно работать, но нередко - к сожалению, нет. И может быть что-то подобное:
И по ошибке совершенно непонятно, в чём дело?
В этом случае логи апача ничего не дадут - они покажут ошибку, с кодом 500.
После упорного поиска было найдено решение, которое в нашем случае помогло.
Дело в том, что веб-серверу необходим доступ на чтение и выполнение к единственному файлу платформы — библиотеке wsap24.so (для Apache 2.4), которая расположена примерно по такому пути:
/opt/1cv8/x86_64/8.3.25.1374/
Для того, чтоб всё заработало есть самый простой путь - дать права на этот файл примерно так:
# chmod 645 /opt/1cv8/x86_64/8.3.25.1374/wsap24.so
И всё должно заработать (для теста можно даже 777 поставить=).
Либо есть более сложный путь, но более правильный - это добавить пользователя apache (из-под него по-дефолту запускается веб-сервер) в группу grp1cv8, а затем изменить права на файл, но чуть иначе.
Добавляем юзера в группу:
# usermod -a -G grp1cv8 apache
Далее изменяем права на файл wsap24.so, но более гуманно и безопасно:
# chmod 654 /opt/1cv8/x86_64/8.3.25.1374/wsap24.so
Должно получиться примерно так:
[root@sql-02 8.3.25.1374]# ls -l wsap24.so
-rw-r-xr--. 1 usr1cv8 grp1cv8 575392 июл 23 2024 wsap24.so
После этих манипуляций так же должно всё заработать, даже без перезапуска апача.
Надеюсь эта статья оказалась вам полезна. Желаю удачи!