Como hospedar sua aplicação Asp.Net Core MVC (inclusive 5.X) fora do Azure

Por menos de U$3/mês você pode ter sua aplicação ASP.NET Core MVC 5.X rodando num provedor realmente especializado em ASP.NET, com direito a e-mail, banco de dados MS SQL e um infinidade de recursos.
Usando Visual Studio 2017 versão comunitária (grátis) , ou também a versão comunitária do Visual Studio 2019, também grátis, você consegue instalar sua aplicação ASP.NET Core 5.X MVC num provedor especializado e com alta velocidade – e com um custo muito baixo. Esqueça Godaddy, LOCAWEB, e mesmo Azure (que acaba custando uma tinta quanto mais você usa).
Depois de muito pesquisar e apanhar, acabei descobrindo o provedor SmarterASP.NET..Em menos de uma hora, estava com minha aplicação Core 5.X rodando. Aqui vai um passo a passo com dicas importantes. Detalhe importante: se você duvidar, pode ter 60 dias de uso grátis!!! Ou seja, você pode comprovar tudo o que estou falando aqui sem gastar um único centavo. Se escolher um plano pago você pode usar qualquer cartão de crédito (ou pagar com PAY-PAL). Se não gostar eles devolvem seu dinheiro.
Passo 1 – Incrição
Vá em SmarterASP.NET. NÃO se preocupe, este é o único formulário em inglês. Todo seu painel pode ser usado em português.
Escolha o plano 60 dias grátis, se não quiser pagar nada agora, Em segundos você recebe um e-mail de confirmação, podendo já acessar e publicar sua aplicação CORE MVC.
A primeira grata surpresa: você ganha um domínio prontinho, seu, para testar sua aplicação na WEB (depois você aponta um domínio seu, não se preocupe agora).
Passo 2 – Acesso
Clique no link recebido por e-mail enviado pela SmarterASP.NET. . Você já pode acessar seu painel. Escilha Português se não quiser inglês. Ao acessar, se o sistema perguntar onde quer seu servidor (USA ou Europa), defina onde quer. Eu defini USA e roda rapisíssimo, fiquei impressionado! Você vai ter de cara um domínio tipo seunomedeusuario-001-site1.htempurl.com
Passo 3 – Pegue os dados de Deploy para seu Visual Studio
Você não vai precisar usar FTP. Vai subir sua aplicação via Visual Studio e comprovar que é rapidíssimo comparada a qualquer subida via FTP. Clique em Sites e depois em Mostrar Informações Web Deploy. Não se preocupe em copiar nada.
Clicando e Mostrar informações abre um painel abaixo:
Deixe VS Estado como ON (verde). Clique no botão “Se quiser publicar configuração”. Os lugares que risquei em amarelo vao ter seu nome de usuário.
Salve em seu disco local o arquivo Site1. Este é um arquivo com extensão .PubblishSettings, próprio para o Visual Studio. Seu conteúdo é este:
Aquivo para publish - SITE1
<publishData>
<publishProfile
publishUrl="https://seunomedeusuario-001-site1.htempurl.com:8172/msdeploy.axd?site=seunomedeusuario-001-site1"
msdeploySite="seunomedeusuario-001-site1"
destinationAppUrl="http://seunomedeusuario-001-site1.htempurl.com/"
profileName="Default Settings"
publishMethod="MSDeploy" userName="ifcseunomedeusuario-001"
AllowUntrustedCertificate="True"
/>
</publishData>
Passo 4 – Abra sua aplicação no Visual Studio e instale o arquivo para PublishSettings
Clique no Solution Explorer do Visual Studio, no lado direito, no nome do seu projeto (com o botão direito). Escolha a opção Publishing.
Clique em Create new profile:
Clique em Import Profile e dê OK
Escolha o Arquivo Site1 que foi gravado no seu disco local:
Clique no botão Publish. O Visual Studio iniciará a subida da sua aplicação, que você notará que é bem rápida.
Uma dica importante: na primeira vez, ANTES de clicar no botão PUBLISH NO VISUAL STUDIO, CLIQUE EM settings, que fica no lado direito do painel de publicação (as vez fica meio escondido na tela). Clique em VALIDAR CONEXÃO (validate connection). Se o sistema reclamar alguma coisa de certificado, diz que sim, que aceita o certificado e pronto. Clique em SALVAR (save) e agora sim, pode publicar.
As vezes o Visual Studio “esquece” que você já fez isso e começa a dar erro na publicação do site. É só repetir a operação acima e tudo volta ao normal. A partir da segunda vez que você publica a atualização é rapidíssima! É a vantagem desse provedor permitir WEB DEPLOY, que só atualiza os arquivos que efetivamente mudaram… Se for fazer pelo FTP do Visual Studio, que é burrinho, pode sair e voltar um bom tempo depois (pois ele sobe todos os arquivos de novo, sempre). É melhor – neste caso, publicar num diretório e subir com o Filezilla, parametrizando-o para só enviar arquivos com novas datas. Mas certamente você vai esquecer que existe FTP usando o WEBDEPLOY…
Outras vantagens:
Você pode criar um número ilimitado de bancos de dados, inclusive SQL. Não paga nada a mais por isso. Para as minhas aplicações isso é muito bom. O desempenho dos servidores é ótimo.
Se tiver algum problema:
- O provedor tem uma base de conhecimento com uma série de bons artigos explicativos, agrupados por tópicos. Tem tudo ali que em geral os clientes podem ter dúvidas;
- Escreva para o suporte. Testei e me responderam rapidinho (nem acreditei, estou acostumado com o padrão 24 horas da Locaweb). O suporte é mesmo 24 x 7! Basta abrir um tíquete de suporte na Central de Ajuda.
Obrigado pela sua leitura. Continue visitando este blog e compartilhe artigos em sua rede de relacionamento. Por favor, se quiser, registre sugestões e comentários aqui no final da página.
Parabéns, foi muito útil para mim esse post.
Obrigado. Conte comigo se precisar
Sabe me informar se eles dão suporte a web api?
Camila, eu não sei, sinceramente. Mas notei que são super-profissionais e atenciosos. Se perguntar eles devem responder.
Dei uma verificada na base de conhecimento deles e pelo jeito dão suporte sim. Veja aqui:
https://www.smarterasp.net/support/kb
Excelente artigo estava mesmo à procura de hospedagem Asp .Net Core para um projeto que estou implementando e que para ser hospedado no Azure ainda não seria economicamente viável. Valeu Obrigado.
É o meu próprio caso, Manoel. O meu volume de uso é baixo e o custo do Azure é alto, ficando economicamente inviável. Estou muito satisfeito com esse provedor.
É o meu caso também….
É o meu caso também…
Obrigado pela dica! Até o momento estou gostando muito.
Belo artigo, Alcides. Pena que este serviço de hospedagem não permite conexões externas. Eu tenho um outro servidor hospedando um MongoDB e para fazer a conexão com este BD eu teria que fazer upgrade para o plano pago (95 usd/ano).
Obrigado! Boa sorte….
Sensacional Tutorial!!!
Obrigado!
Caraca! Finalmente consegui testar meu primeiro deploy Asp.NET 😀
Muito obrigado !!!!
Professor, sei que provavelmente é bem ocupado, mas peço que não desista do projeto quanto tiver um tempinho, posta um tutorial
Quando tiver um tempinho posto sim.
Olá, só é possível publicar uma aplicação asp.net core pelo visual studio? enviando os arquivos por FTP não funciona?
Murilo: desculpe a demora na resposta, ehehe. Funciona sim, mas não sei porque demora muito mais para fazer o upload (a primeira carga é bem lenta). Precisa setar o FTP para não recarregar arquivos com mesma data… Aí ele sobre só os novos.
Como funciona para hospedar a aplicação juntamente com o banco de dados sql serve 2017 ?
Funciona super bem. E não há limites para o número de bancos MS SQL…
Será que consigo hospedar nele uma aplicação minha, com front end em angular e back em .net core e bd em sql server ?
Com certeza sim. Como você tem 60 dias de teste, pode ir com segurança.
Boa noite, será se vc conseguiria me ajudar professor? Criei uma API, fiz o deploy, mas ao chama-la com as rotas do meu controller, fico recebendo erro 500, local funciona, mas ao fazer deploy nao funciona
Gabriel, sem ver o código fica muito “chutômetro” dar palpite. Eu faria o seguinte, antes de tudo: limparia o que está no servidor. Depois apagaria no projeto (faz um backup antes, por via das dúvidas) tudo o que está, no seu projeto, dentro dos diretórios bin/debug e bin/release bem com obj/debug e obj/release, na máquina local.
Reconstroi (REBUILD) a aplicação. Coloca, no projeto, o modo RELEASE e tenta rodar localmente. Tudo certo? Então faz o deploy assegurando-se que está também no modo release (em publishing). Muitas vezes o Visual deixa umas sujeiras que vão para o servidor, por isso a limpeza. Não sei se isso vai resolver, mas você vai ter certeza que o código local e o do servidor são os mesmos. Outra dica: dependendo da versão que está usando, veja se o arquivo startup.cs está bem configurado (mudaram muita coisa nesses tempos do 2.0 até o 2.2). Pode estar sobrando ou faltando algo que é importante no servidor mas não afeta a aplicação na máquina local. O comportamento do IIS local é uma coisa sendo que no deploy, dependendo de como você configurou, sua aplicação pode estar não se entendendo com o IIS do windows server (ou mesmo bypassando). Eu começaria por aí para caçar o gato. Não sou professor não, mas espero ter ajudado.
Alcides, esse artigo me salvou ! Muito grato mesmo por uma informação tão útil como compartilhada.
Procurei bastante por todos os provedores de hospedagem nacionais, mas nenhum deles dava a garantia de que eu poderia hospedar minha aplicação .NET Core 2.2 e SQL Server. Alguns até aceitavam o .NET Core, mas só com MySQL.
Resolvi dar uma conferida nos serviços do Azure: 12 meses “grátis” e 750 reais em serviços para testar, porém após subir algumas máquinas virtuais e web apps na pura inocência, criar e apagar bds e instâncias, em pouco menos de um mês minha conta já estava na casa dos 600 reais ! A pouco de estourar os 750 gratuitos. Sorte de que me liguei a tem a e apaguei minha conta. Aí lendo aqui descobri o smarterasp.net e em pouco mais de meia hora subi minha aplicação e banco.
mais uma vez muito obrigado !
O mesmo aconteceu comigo. Por isso resolvi compartilhar. Que bom que funcionou. O suporte deles é ágil e sempre me ajudou. Tenho várias bases de dados MS SQL e funcionam perfeitamente… A empresa é 10.
Olá Alcides. Muito bom este artigo e fiquei muito interessado. Poderia dar mais informações sobre o uso do MS SQL Server? Pra usarmos o banco SQL Server em nossa aplicação temos que possuir uma licença do banco SQL Server no referido servidor de hospedagem? Como você faz para ter várias bases de dados SQL Server? Há um custo extra para tal? Obrigado.
Carlos.
Desculpe a demora na resposta. NÃO, PARA USAR O sql server não precisa de licença – a menos que sua aplicação vá consumir muitos gigabytes (mais que 2 ou 4, não me recordo agora). Este provedor que eu recomendo (https://coremvc.com.br/como-hospedar-aplicacao-asp-net-core-mvc-fora-do-azure/) permite instalar infinitas bases sql sem nenhum custo adicional. E você pode ter qualquer aplicação que rode em .dotnet ou mesmo php. Tem 60 dias para testar e usar sem nenhum custo. Estou usando há 3 anos sem nenhum problema em todas as minhas aplicações. E o suporte, quando precisei, foi rápido e fantástico, sempre resolveu de imediato. Pode testar e comprovar o que estou dizendo. Não se esqueça de instalar o MSSQL cliente na sua máquina, para acessar as suas bases MSSQL (GRATIS) no servidor do provedor. A aplicação deles é inteligente: ao fazer o login, você cai direto NA SUA BASE, não tendo que ficar procurando o seu database numa lista de intermináveis databases (como fazem outros provedores, vergonhosamente). SUcesso!
Muito bom, valeu pela dica, funcionou perfeitamente, diferente de alguns blogs que só funcionam parcialmente, parabém.
Obrigado!
Parabéns e obrigado pelas informações em seus blogs.
Boa sorte meu amigo.
Tenho uma aplicacao asp.net com sqlserver. Consigo hospedar o meu banco de dados tambem?
Sim, claro que consegue. Em MSSLQ ou MySQL
Parabéns. Obrigado por compartilhar seu conhecimento.
Depois de ter testado alguns servidores e por falta de conhecimento gastado dinheiro achei esse seu blog que ajudou muito.