Estou tentando encontrar uma maneira de implantar o código ASP.NET com o mínimo possível de perturbações no site. Um pensamento era configurar o site para ser atendido a partir de uma junção NTFS c:\www\example.com
onde
c:\www\example.com -> c:\www\example.com_r1234
Em seguida, quando o novo código é implantado, ele é copiado c:\www\site.com_r1235
e a junção redirecionada para
c:\www\example.com -> c:\www\example.com_r1235
Então, minha pergunta é o que afeta isso pode ter nas solicitações atuais no IIS? Que outras desvantagens isso pode ter do ponto de vista da reação do IIS à mudança (se houver)? Será tão fácil para o usuário final do site quanto eu espero?
(Eu considerei alterar a raiz da web do site por meio da linha de comando, mas realmente não gosto da ideia de reconfigurar o IIS por causa de qualquer domínio desnecessário ou rotatividade desnecessária de pool de aplicativos que possa acontecer, mas não sei muito sobre o que acontece quando o caminho físico configurado de um site é alterado enquanto está sob carga)
Para deixar claro, minha única preocupação aqui é a experiência dos meus usuários finais. Meu objetivo é evitar distúrbios para eles, não conveniência para mim.
fonte
Respostas:
Parece que esse objetivo e sua solução proposta não estão alinhados, porque agora você tem um monte de trabalho ou scripts extras envolvidos para cada implantação.
Uma coisa que eu vi foi instalar um cliente svn no servidor de produção, e o site de produção é uma cópia com check-out de um local / filial específico na árvore de controle de origem. Dessa forma, pelo menos você só precisa atualizar os arquivos alterados para novas implantações.
fonte
Criei uma pasta atrás da minha raiz da web chamada
_images
depois copiou um monte de arquivos gif para ele. Eu criei um link simbólico NTFS na minha raiz usando
No Visual studio 2010, eu "Mostrar todos os arquivos", atualizo ... e incluo as novas "webimages" em meu projeto. Agora posso apontar para ...
Quando executo o aplicativo, ele também funciona bem na minha máquina local.
Eu não vou saber se ele funciona no servidor real (IIS 7) até que a infraestrutura resolva isso, alguém conhece algum problema sobre por que isso não funcionaria na produção?
Sinto que os direitos devem existir e, em caso afirmativo, que ótima maneira de simplificar o compartilhamento de pastas (de todos os tipos) entre aplicativos da web.
Ainda não tentei expressar isso no TFS; portanto, se alguém tiver algum comentário sobre isso, avise-nos!
fonte
Isso não funcionará porque o IIS pode pensar que o web.config foi alterado por outro programa. O IIS provavelmente lançará uma exceção System.Configuration.ConfigurationErrorsException. Eu sugeriria escrever algum tipo de script para alterar apenas o diretório inicial do site.
fonte