![]() |
|
| ||
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 | ||
DGorgoN 2 - 25.02.21 - 14:37 | в папочку его перемести ) | ||
Admin_Net_1C 3 - 25.02.21 - 14:48 | |||
Йохохо 4 - 25.02.21 - 14:49 | а на шару не прокатит в хттпд.конф Alias "/api/hs" ? | ||
Admin_Net_1C 5 - 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 admin@example.com 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 NoneRequire 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 | ||
Admin_Net_1C 7 - 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 NoneRequire 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\hsApache не стартует, в журнале системы ошибка: Служба "Apache2.4" завершена из-за следующей внутренней ошибки: Неверная функция. | ||
Admin_Net_1C 8 - 26.02.21 - 09:35 | (7) ошибки в этих двух строках:
# Order allow,deny # Allow from all если раскомментирю любую из них, апач не стартует | ||
Admin_Net_1C 9 - 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 NoneRequire 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 | мб опубликовать любым рабочим способом, а потом блокнотом поправить алиас | ||
Admin_Net_1C 11 - 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 NoneRequire 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 |
|
Список тем форума |