Что ж, лучшее решение - это довольно простой серверный код, но я собираюсь предположить, что вы уже это отклонили, возможно, из-за того, что у вас нет разрешения на запуск кода на сервере (хотя, если вы взломали конфигурациютогда вы, вероятно, делаете).
Решение только в конфигурации может сделать так, чтобы он служил из корневого каталога по умолчанию, но переписать URL, если файл существует в правильном каталоге ...
RewriteCond /web-1/a_file -f
RewriteRule ^(.*)$ /web/$1
Но вам придется делать это для каждого файла каждого бренда.Вы можете быть более умным в этом, если файлы хранятся в директории, которая совпадает с именем хоста, но это становится слишком сложным для меня.
Серьезно, серверный код - это путь для продолженияэто ...
Как ни странно, коллега по работе был почти в той же ситуации пару недель назад, и в конце концов он переписал его как PHP.Каждый сайт представляет собой строку в базе данных, одну страницу, которая извлекает измененный текст и URL-адреса для изображений и т. Д. И возвращается к значению по умолчанию, если там ничего нет.
Сказав все это.Использование ссылок, как вы сказали выше, решает проблему 2, вероятно, большую часть 1, и я не думаю, что есть способ обойти 3.