У меня есть локальный сервер Tomcat, который я разрабатываю для использования моего локального экземпляра IIS в качестве прокси.
Я делаю это потому, что развертывание сервера является болезненным процессом, так как большая часть контента не является (что я бы описал как) автономной. Контент из разных проектов по существу копируется в корень сервера. Я не хотел иметь дело с такой сложностью его настройки, поэтому с помощью модуля перезаписи я мог переписывать URL-адреса в виртуальные каталоги по большей части.
например,
/js/* -> /someproject/js/*
/css/* -> /someproject/css/*
/**/*.pdf -> /someotherproject/pdf/*
Тем не менее, есть несколько случаев, когда эта схема не работает, особенно когда в каталогах назначения есть совпадение. При развертывании некоторые ресурсы размещаются в одном и том же каталоге, поэтому нет никакого реального способа определить, какой именно. В этих файлах нет строгой закономерности, все смешанное.
например,
/someproject1/file1.txt -> /file1.txt
/someproject2/book2.doc -> /book2.doc
Поэтому, учитывая URL /file1.txt
, я не знаю, могу ли я переписать, чтобы перейти к someproject1
или someproject2
. Так что я думаю, я мог бы заставить это работать, если бы была какая-то иерархия того, к чему URL пытаться переписать. Поэтому я мог бы взять URL-адрес, такой как /file3.txt
, переписать первый из этих шаблонов, который кажется действительным.
/someproject1/file3.txt # if 404, try the next
/someproject2/file3.txt # if 404, try the next
/someotherproject/file3.txt # if 404, try the next
/file3.txt # fallback
Это можно выразить только с помощью модуля перезаписи URL?