Je développe un serveur tomcat local pour utiliser mon instance IIS locale en tant que proxy.
Je le fais parce que le déploiement du serveur est un processus difficile, car une grande partie du contenu n'est pas (ce que je décrirais comme) totalement indépendante. Le contenu de différents projets est essentiellement copié à la racine du serveur. Je ne voulais pas m'occuper de cette installation fastidieuse, alors avec l'aide du module de réécriture, je pouvais réécrire les URL dans des répertoires virtuels pour la plupart.
par exemple.,
/js/* -> /someproject/js/*
/css/* -> /someproject/css/*
/**/*.pdf -> /someotherproject/pdf/*
Cependant, il existe quelques cas où ce schéma ne fonctionne pas, en particulier lorsque les répertoires de destination se chevauchent. Dans le déploiement, certaines ressources sont placées dans le même répertoire; il n’ya donc aucun moyen de distinguer qui est lequel. Il n'y a pas de modèle strict pour ces fichiers, c'est un sac mélangé.
par exemple.,
/someproject1/file1.txt -> /file1.txt
/someproject2/book2.doc -> /book2.doc
Donc, étant donné une url /file1.txt
, Je ne saurais pas si je peux réécrire pour aller à someproject1
ou someproject2
. Donc, je pense que je pourrais faire en sorte que cela fonctionne s'il y avait une sorte de hiérarchie vers laquelle les URL à essayer de réécrire. Donc, je pourrais prendre une URL comme /file3.txt
, réécrivez le premier de ces modèles qui semble valide.
/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
Est-ce quelque chose qui ne peut être exprimé qu'en utilisant le module de réécriture d'URL?
http://{Site}/music
et http://{Site}/Music
les deux pointent au même {Drive}:\{Path}\SharedMusic
.
for /r %i in (*.*) do mklink /h "{CombinedPath}\%~nxi" "%i"
(doubler le %
dans un fichier batch). Vous devrez d'abord effacer le {CombinedPath}
répertoire avec del {CombinedPath}\*.*
. Vous pouvez essayer de créer des liens symboliques (omettre /h
), mais je ne sais pas si IIS les gérera correctement.