location /app/xxx.8080/
{
proxy_pass http://comp.xxx.local:8080/;
body_filter_by_lua '
if string.match( ngx.header.content_type, "text%/html") then
ngx.arg[1] = string.gsub( ngx.arg[1], " href=\\"\\/openam", " href=\\"/xxxxx/openam" )
ngx.arg[1] = string.gsub( ngx.arg[1], " src=\\"\\/openam", " src=\\"/xxxxx/openam" )
ngx.header.content_length = nil
end
';
}
Если вы думаете о переносе этого набора в GUI-интерфейс с базой, то тут придётся помучиться, потому что всплывут те же проблемы, которые есть у всех "веб-клиентов" - разделение доступа, безопасность/аутентификация/авторизация, ведение бд пользователей и всё это не имеет никакого отношения к самой задаче. Если вы рассматриваете вопрос о nosql, то тут есть общая проблема, которая так же не относится к вашей задаче, а решить её придётся - транзакции пока только на уровне одного документа, т.е. если вы решите сохранить два документа и с одним что-то пошло не так, а второй сохранился, то отменить сохранение второго документа и вернуться к исходному состоянию двух документов уже не получится. Вот так "лёгким" внедрением mongo базы в задачу вы получите ворох проблем, решение которых может быть неоправданно дорогим и за которые может и нет смысла браться.
Но это не значит, что ничего не надо делать. Иногда решение находится очень неожиданно и совсем не там где ищете.