Eu baixei o projeto online no ASP.Net. Ao executar o aplicativo, recebo um erro
É um erro usar uma seção registrada como allowDefinition = 'MachineToApplication' além do nível do aplicativo. Este erro pode ser causado por um diretório virtual não estar configurado como um aplicativo no IIS.
Quais alterações devo fazer no web.config ou em outro local para que isso funcione?
asp.net
visual-studio-2012
Deepali
fonte
fonte
obj
pasta.Respostas:
Acabei de encontrar essa "delícia". Parece se apresentar logo após a publicação de um aplicativo Web no modo de lançamento.
A única maneira de contornar consistentemente o problema que encontrei é seguir esta lista de verificação:
fonte
MvcBuildViews
paratrue
.Basta encontrar este post e isso estava acontecendo comigo.
Apenas
Clean
o projeto e o erro desaparecem. (deve ser um bug do VS2010)fonte
obj
pasta. Às vezes, isso também precisa ser excluído.Acabei de ter esse problema ao criar uma segunda versão do meu site. Não aconteceu quando eu o construí pela primeira vez.
Acabei de excluir as pastas bin e obj, execute uma solução limpa e criei novamente, desta vez sem nenhum problema.
fonte
Nenhum. Você precisa configurar o diretório em que colocou o site como um aplicativo da Web no IIS .
fonte
Este erro ocorre quando você tenta abrir um projeto como um site. A maneira mais fácil de determinar se você criou um site ou projeto é verificar a pasta da solução (ou seja, onde você salvou o seu código) e verificar se você tem um arquivo * .sln no diretório raiz, se tiver, você criou um projeto.
Só para adicionar, encontrei esse erro agora quando tentei abrir um projeto que criei um tempo atrás, selecionando "Arquivo", "Abrir site" nos menus do Visual Studio, enquanto eu deveria ter selecionado "Arquivo", "Abrir projeto" em vez de. Fiquei facepalmed assim que percebi :)
fonte
No Visual Studio 2013, lutei com isso por um tempo e é praticamente fácil de resolver basta seguir o que as exceções dizem "diretório virtual não está sendo configurado como um aplicativo no IIS"
No meu caso eu tinha
WebService
plantado dentroIIS website
de modoConvert to Application
Ok
O WCF está de volta e funcionando.
fonte
O erro sugere que o código que você está usando espera que um diretório virtual seja configurado no IIS.
Procure a documentação e adicione o diretório virtual necessário. Deve ser um diretório que contenha um
web.config
(não o diretório raiz).fonte
<authentication mode="Forms"><forms name="..." loginUrl="~/Login/Login/" timeout="2880" /></authentication>
com eleWeb.config
naViews
pasta do tronco, o que causou esse problema.Se você possui um projeto MVC com visões ativadas, uma das soluções é excluir a pasta obj antes da compilação. Adicionar ao arquivo do projeto:
Aqui está o artigo: Como remover a pasta bin e / ou obj antes da compilação ou implantação
fonte
Uma alteração recente do web.config pode estar no arquivo web.config errado.
Uma
<machineKey...>
propriedade foi adicionada ao Views / web.config . Não importa quantas limpezas e reconstruções o erro permaneça. A correção foi mover a propriedade para a raiz /web.config .fonte
se você encontrar esse erro
SOLUÇÃO
Eu tive o mesmo problema com o VS 2012. Resolvi isso
<MvcBuildViews>false</MvcBuildViews>
Se você tiver, uma solução é excluir o conteúdo da pasta obj no projeto gerado pelo compilador.
fonte
MvcBuildViews
atrue
é como eu tenho o erro no primeiro lugar.<MvcBuildViews>true</MvcBuildViews>
No meu caso, o problema apareceu somente depois que publiquei o projeto no subdiretório. Devido à minha falta de conhecimento, coloquei meu
web_publish
subdiretório dentro doweb_project
diretório.É claro que
web_publish
contém também os mesmosWeb.config
que o projeto contém. No entanto, oweb_project
não sabe que meuweb_publish
deve ser evitado ao pesquisarWeb.config
s nos subdiretórios aninhados. Dessa forma, osWeb.config
s foram duplicados e o erro apareceu.A solução foi colocar o meu
web_publish
em outro lugar.fonte
No meu caso, havia uma pasta "Backup" que continha outra cópia de todo o site. Isso significava outro
web.config
e, portanto, a compilação falhou com esse erro. Excluí a pasta "Backup", fiz uma solução limpa nas versões de depuração e lançamento e o erro desapareceu.fonte
No meu caso,
Solução contém 6 projetos, 1 principal e 5 subdiretórios. todos os subdiretórios com web.config.
Ao executar qualquer página em subdiretórios, eu estava recebendo o mesmo erro.
Eu removi esta linha do web.config,
isso funcionou para mim.
fonte
Limpe seu projeto Remova a pasta / obj (provavelmente usando publicar e implantar? - há um bug nela)
fonte
Meu problema foi que eu publiquei acidentalmente meu serviço da web em um local pré-concluído em uma nova instalação do VS2010.
Eu publiquei em uma pasta chamada PreCompiledWeb , e a presença do web.config suspeito que tenha estragado tudo.
Simplesmente coloquei uma nuked na pasta e atualizei o projeto.
Ao clicar duas vezes nesse erro, levei-me ao arquivo web.config errado, que me deu uma dica.
fonte
Pode ser o problema da versão, como você baixa o projeto do .Net framework 2.0 e deseja abri-lo no VS2008. Você precisará atualizar para a versão mais recente e o VS criará o backup da pasta no mesmo diretório raiz. obtenha a resposta aqui .
fonte
Eu tive esse erro ao criar a solução com o Projeto de Implantação da Web criado em minha solução. Eu resolvo o erro excluindo a pasta em que o Projeto de Implantação da Web foi criado. Esta pasta é especificada no atributo "Pasta do Projeto" das propriedades do WDP
fonte
Excluir pastas bin e obj. Em seguida, reconstrua a solução.
fonte
Aparentemente, havia dois arquivos web.config na minha solução. Estou usando o MVC4 e havia outro arquivo de configuração em Views e eu estava fazendo a alteração no arquivo errado. Corrigido lá me ajudou.
Mas você sempre pode alterar o redirecionamento / rota padrão no arquivo global.asax.
fonte
Provavelmente você tem uma pasta de projeto sub asp.net dentro da pasta do projeto que não está configurada como diretório virtual. Configure o projeto para ser executado no IIS.
fonte
Eu adicionei ao meu script de publicação do site. No final, exclua a pasta obj da pasta do site.
fonte
Eu tenho esse problema mais frequente se "true" estiver ativado no arquivo do projeto.
Como Jonny diz:
fonte
Eu tinha um projeto que não queria ser um aplicativo da web, queria que fosse uma pasta. A resposta foi excluir o arquivo web.config completamente. Ele pertence apenas à raiz de um aplicativo.
fonte
Se você enfrentar esse problema ao publicar seu site ou aplicativo em algum servidor, a solução simples que usei é converter a pasta que contém arquivos em aplicativos da web.
fonte
Convert to Application
.Eu tenho o mesmo problema no VS 2013 depois de publicar meu projeto no modo de depuração. O problema foi resolvido removendo obj / files
fonte
Eu tenho um projeto de site.
No meu caso, mudei o arquivo de solução para outro caminho e isso causou o problema. Eu o restaurei no local anterior e o problema desapareceu.
fonte
Para quem ainda procura, minha solução foi excluir as pastas bin e obj e reiniciar o visual studio parece corrigi-lo.
fonte
Via Visual Studio, publiquei um serviço WCF via FTP em um servidor externo. Funcionou bem localmente e ao publicar em um servidor interno, mas não no externo. A solução foi publicar sem fornecer um
Site Path
(em outras palavras, publique diretamente na raiz do diretório virtual).Não sei ao certo por que funcionou, pois eu já havia tentado mover os arquivos para a raiz através de um cliente FTP externo - entre muitas outras tentativas, incluindo todas as listadas aqui. Talvez tenha sido algo com o perfil de publicação, como foi para FabianVal . Mas não estou mais com vontade de testar neste momento, pois estou com pressa de me atualizar depois de todos os dias desperdiçados com esse problema.
fonte
dica 1: limpe e depois reconstrua.
dica 2: basta fechar o VS e abrir novamente.
dica 3: o projeto baixado pode estar dentro de outra subpasta ... abra a pasta que contém os arquivos .net.
c: / demo1 / demo / (todos os arquivos)
Você deve abrir a demo de vs ... não demo1.
fonte
Eu tentei todas as soluções acima, mas nenhuma delas funcionou para o meu problema. (Tenho certeza de que existem 1000 soluções para esse problema) Para o meu cenário, eu estava tentando publicar meu serviço Web WCF que eu tinha em teste na produção.
No entanto, não percebi que na produção somos apenas HTTPS, o que significa que redirecionamos tudo para HTTPS. Acontece que eu estava apontando para o serviço via HTTP em vez de HTTPS, causando o erro. A solução nesse cenário foi simplesmente alterar o protocolo de endereço para HTTPS em vez de HTTP.
Espero que ajude uma pobre alma por aí tentando descobrir esse problema.
fonte