|
Какие настройки нужно выполнить, чтобы опубликовать http сервис по нестандартному пути | ☑ | ||
---|---|---|---|---|
0
Admin_Net_1C
25.02.21
✎
14:31
|
Добрый день народ.
Подскажите, кто в теме публикации http сервисов: есть база в продакшене, где http сервис опубликован по нестандартному genb URL+"api/hs/"+ИмяСервиса (при обычной публикации из конфигуратора путь будет URL+"hs/"+ИмяСервиса, т.е. без "api/"). В качестве вэб-сервера используется Apachе 2.4. Вопрос: какие настройки нужно выполнить в apache и/или файле публикации сервиса (vrd), чтобы на локальной машине разработчика добиться публикации по такому же пути? |
|||
1
ДенисЧ
25.02.21
✎
14:37
|
google://mod_rewrite
|
|||
2
DGorgoN
25.02.21
✎
14:37
|
в папочку его перемести )
|
|||
3
Admin_Net_1C
25.02.21
✎
14:48
|
(1) буду изучать, спасибо
(2) кого? в какую? ) |
|||
4
Йохохо
25.02.21
✎
14:49
|
а на шару не прокатит в хттпд.конф Alias "/api/hs" ?
|
|||
5
Admin_Net_1C
26.02.21
✎
08:43
|
(4) Попытки (перед каждой новой попыткой система возвращается в первоначальное состояние):
1) указал в httpd.conf настройку AliasMatch ^(.*)/api/hs/(.*)$ $1/hs/$2 При выполнении запроса к сервису получаю ошибку: Forbidden You don't have permission to access this resource. (403) 2) в каталоге, где находится файл vrd сервиса, к которому идет обращение, создал файл .htaccess со строками: RewriteEngine On RewriteBase / RewriteRule ^(.*)/api/hs/(.*)$ $1/hs/$2 При выполнении запроса к сервису получаю ошибку: Internal Server Error The server encountered an internal error or misconfiguration and was unable to complete your request. Please contact the server administrator at [email protected] to inform them of the time this error occurred, and the actions you performed just before this error. More information about this error may be available in the server error log. (500) 3) в каталоге, где находится файл vrd сервиса, к которому идет обращение, создал вложенный каталог "api" и переместил туда файл vrd. При выполнении запроса к сервису получаю ошибку: 1C:Enterprise 8 application error:Ошибка при разборе дескриптора виртуальных ресурсов by reason: Файл не обнаружен 'C:\1C_DB\1C_WEB\UT_Local\default.vrd'. 2(0x00000002): Не удается найти указанный файл. (500) Подскажите, что не так делаю? |
|||
6
Йохохо
26.02.21
✎
09:06
|
(5) нету тестовой базы. попробуй не через мод рерайт, а просто мод алиас, (5) в топку, блокнотом (4) в хттпд.конф
# ++ 1c publication Alias "/api/hs" "E:/sites1c/hs" <Directory "E:/Apache/Apache2.4.64/sites1c"> Options Indexes FollowSymLinks AllowOverride None Require all granted </Directory> # hs <Directory "E:/sites1c/hs"> AllowOverride None Order allow,deny Allow from all SetHandler 1c-application ManagedApplicationDescriptor "E:/sites1c/hs/default.vrd" </Directory> # -- 1c publication |
|||
7
Admin_Net_1C
26.02.21
✎
09:29
|
(6) переделал под свои пути, получилось:
# ++ 1c publication Alias "/api/hs" "C:/1C_DB/1C_WEB/hs" <Directory "C:/Apache24/1C_WEB/hs"> Options Indexes FollowSymLinks AllowOverride None Require all granted </Directory> # hs <Directory "C:/1C_DB/1C_WEB/hs"> AllowOverride None Order allow,deny Allow from all SetHandler 1c-application ManagedApplicationDescriptor "C:/1C_DB/1C_WEB/hs/default.vrd" </Directory> # -- 1c publication Перенес файл vrd в каталог C:\1C_DB\1C_WEB\hs Apache не стартует, в журнале системы ошибка: Служба "Apache2.4" завершена из-за следующей внутренней ошибки: Неверная функция. |
|||
8
Admin_Net_1C
26.02.21
✎
09:35
|
(7) ошибки в этих двух строках:
# Order allow,deny # Allow from all если раскомментирю любую из них, апач не стартует |
|||
9
Admin_Net_1C
26.02.21
✎
09:38
|
(6) при таком конфиге:
# ++ 1c publication Alias "/api/hs" "C:/1C_DB/1C_WEB/hs" <Directory "C:/Apache24/1C_WEB/hs"> Options Indexes FollowSymLinks AllowOverride None Require all granted </Directory> # hs <Directory "C:/1C_DB/1C_WEB/hs"> AllowOverride None # Order allow,deny # Allow from all SetHandler 1c-application ManagedApplicationDescriptor "C:/1C_DB/1C_WEB/hs/default.vrd" </Directory> # -- 1c publication Ошибка при обращении к сервису: {ОбщийМодуль.ОбщаяИБ.Модуль(174)}: 1C:Enterprise 8 application error:HTTP: Not found Ошибка при работе с ресурсом /ut_local/api/hs/prisesofsupplier/getprisesbyfulltextsearch (404) |
|||
10
Йохохо
26.02.21
✎
09:40
|
мб опубликовать любым рабочим способом, а потом блокнотом поправить алиас
|
|||
11
Admin_Net_1C
26.02.21
✎
09:50
|
(10) рабочий способ, тот, который система создает автоматически при публикации из конфигуратора. В этом случае в httpd:
Alias "/ut_local" "C:/1C_DB/1C_WEB/UT_Local/" <Directory "C:/1C_DB/1C_WEB/UT_Local/"> AllowOverride All Options None Require all granted SetHandler 1c-application ManagedApplicationDescriptor "C:/1C_DB/1C_WEB/UT_Local/default.vrd" </Directory> и работает, НО поскольку в продакшене, в конфиге зашито обращение URL+"api/hs/"+ИмяСервиса, то каждый раз при разработке/отладке на локальной копии приходится заменять эту строку на URL+"hs/"+ИмяСервиса |
|||
12
Йохохо
26.02.21
✎
09:51
|
Alias "/api/hs" "C:/1C_DB/1C_WEB/UT_Local/"
не на чем потестить, почитай httpd /? для теста можно сделать свой инстанс апача httpd -k -n xxx -f yyy |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |