diff --git a/web-1c/README.md b/web-1c/README.md index 65a0f58..a4ef879 100644 --- a/web-1c/README.md +++ b/web-1c/README.md @@ -75,7 +75,7 @@ docker images dfwebos/apache-1c ```xml @@ -85,6 +85,8 @@ docker images dfwebos/apache-1c Файл смонтирован томом — изменения подхватываются перезапуском приложения, **без пересборки образа**. +Для DFWebOS с запуском через прокси `base` должен оставаться `/app-web-1c/BuhBase`: Apache внутри контейнера добавляет этот префикс перед передачей запроса 1С-handler'у, а браузер получает корректные абсолютные ссылки через `/app-web-1c/...`. + ### 4. (Опционально) добавить DNS-имена сервера 1С Если в `default.vrd` используется DNS-имя сервера 1С (а не IP), которое не разрешается из контейнера, раскомментируйте блок `extra_hosts:` в [docker-compose.yml](docker-compose.yml) и пропишите соответствие имени и IP-адреса. diff --git a/web-1c/dfwebos-app.yml b/web-1c/dfwebos-app.yml index e98b6ff..31ceaf0 100644 --- a/web-1c/dfwebos-app.yml +++ b/web-1c/dfwebos-app.yml @@ -35,7 +35,7 @@ releaseNotes: >- Содержит: - Apache 2.4 с модулем веб-сервера 1С:Предприятие 8.3.23.1912. - Преднастроенный httpd.conf с публикацией информационной базы по пути `/BuhBase`. - - Поддержку cookies за обратным прокси DFWebOS (SameSite=None, Secure при HTTPS). + - Поддержку cookies за обратным прокси DFWebOS (SameSite=None и Secure только при HTTPS). - Учёт заголовка `X-Forwarded-Proto` от обратного прокси DFWebOS. torOnly: false permissions: [] diff --git a/web-1c/docker/httpd.conf b/web-1c/docker/httpd.conf index bc4b0de..7d55af6 100644 --- a/web-1c/docker/httpd.conf +++ b/web-1c/docker/httpd.conf @@ -605,10 +605,10 @@ Alias "/app-web-1c/BuhBase" "/usr/local/apache2/htdocs/BuhBase/" ManagedApplicationDescriptor "/usr/local/apache2/htdocs/BuhBase/default.vrd" # Корректная работа cookies за обратным прокси (DFWebOS). - # SameSite=None позволяет cookies проходить через прокси/iframe. + # SameSite=None допустим только вместе с Secure; на локальном HTTP браузеры + # отбрасывают такие cookies, что ломает сессию входа 1С. - Header edit Set-Cookie ^(.*)$ "$1; SameSite=None" - # Если DFWebOS работает по HTTPS, добавляем Secure + Header edit Set-Cookie ^(.*)$ "$1; SameSite=None" "expr=%{HTTPS} == 'on' || %{HTTP:X-Forwarded-Proto} == 'https'" Header edit Set-Cookie ^(.*)$ "$1; Secure" "expr=%{HTTPS} == 'on' || %{HTTP:X-Forwarded-Proto} == 'https'"