Close Menu
Código Simples .NETCódigo Simples .NET
    Facebook X (Twitter) Instagram
    Trending
    • NewSQL em 2025: O Estado Atual, Tendências e o Futuro dos Bancos de Dados Relacionais Escaláveis
    • 12 Regras Essenciais para Reduzir a Latência de Aplicações
    • Cache Hit Ratio: Como uma Simples Métrica Pode Revolucionar sua Arquitetura
    • Como a Uber calcula o tempo estimado de chegada
    • 30 APIs Gratuitas para desenvolvedores
    • Por que escalar escrita é tão mais difícil do que escalar leitura?
    • MongoDB Analyzer para .NET: Visualize e otimize suas consultas de forma simples
    • Cardinalidade: O Conceito que Transforma o Desempenho de Bancos de Dados SQL e NoSQL
    Facebook X (Twitter) Instagram
    Código Simples .NETCódigo Simples .NET
    Código Simples .NETCódigo Simples .NET
    Home»Asp.net»Rodar um mini servidor web a partir de uma pasta

    Rodar um mini servidor web a partir de uma pasta

    Rodrigo FerreiraBy Rodrigo Ferreira20 de abril de 20193 Mins Read Asp.net
    Share
    Facebook Twitter LinkedIn WhatsApp Copy Link

    Em diversos momentos surge a necessidade de testar um site ou página web que acabou de criar para ver se esta tudo funcionando redondo, se a chamada para API está ok ou apenas para apreciar momentaneamente as diversas horas de trabalho que foram aplicadas. Vamos ver as três formas que mais gosto:

    Usando Node.JS

    Considerando que instalou o Node.Js e o gerenciador de pacote npm, execute o comando abaixo para instalar o módulo http-server, responsável por subir nosso servidor web:

    npm install -g http-server

    O parâmetro -g instala o pacote globalmente no pc, pode trabalhar de forma local no projeto com package.json. Para prosseguir, direcione o terminal para a pasta do seu pojeto e execute o comando abaixo para subir seu servidor web:

    http-server

    Algo semelhante a isto irá aparecer:

    Servidor web pronto!

    Por padrão é usada a porta 8080, mas pode alterar usando o prâmetro -p, veja:

    http-server -p 8282

    Simples né? Basta acessar o endereço informado no terminal e usar.

    Usando Python (versão 3)

    Aqui começamos com o python (versão 3.7) e gerenciador de pacotes pip: Recomendo trabalhar com ambientes viruais no python, não vu entrar em detalhes pois não é o popósito deste post, veja como fazer aqui.

    Primeiro instale o pacote chamado simple-http-server:

    pip install simple-http-server

    Agora suba o servidor na pasta do projeto(site):

    python -m http.server 8080

    Altere a porta se desejar, o parâmetro -m procura o nome módulo no sys.path e executa o mesmo, veja detalhes.

    Usando DotnetCore (versão 2.1)

    E quanto ao nosso querido .Net? Vou mostrar o exemplo raíz e outra forma mais simples criada através de uma ferramenta um integrante do ASP.Net Core Team.

    Usando apenas o dotnet 2.1

    Por padrão o projeto MVC em .Net não vai servir arquivos estáticos, então vamos precisar do dotnet 2.1(no meu caso) e o package Microsoft.AspNetCore.StaticFiles, siga os passos:

    dotnet new mvc
    dotnet add package Microsoft.AspNetCore.StaticFiles -v 2.1.*

    • Linha 1: criamos o projeto base MVC, arquivos e pastas padrão são criados como: appSettings.json, Program.cs, Startups.cs, pastas Models, Controllers e Views.
    • Linha 2: precisamos desse pacote para servir os arquivos estáticos, atente para a versão 2.1 neste caso, ao executar o comando sem informar a versão ele instalou a 2.2 o que acabou gerando erro porque meu dotnet é 2.1.

    Certifique-se que a linha abaixo existe no seu Startup.cs, dentro do método Configure:

    app.UseStaticFiles();

    Agora altere seu Program.cs para ficar assim:

    public static void Main(string[] args)
    {
    var host = new WebHostBuilder()
    .UseKestrel()
    .UseContentRoot(Directory.GetCurrentDirectory())
    .UseStartup()
    .Build();
    host.Run();
    }

    Explicando: a linha do UseContentRoot faz a mágica.

    Para finalizar coloque seu site estático dentro da pasta wwwroot, sim uma pasta wwwroot tem que ter sido gerada ao instalar nosso pacote StaticsFiles. No meu caso ficou assim:

    Agora execute o comando abaixo na raíz (fora do wwwroot) :

    dotnet run

    e acesse o endereço http://127.0.0.1:5000/index.html

    Usando a tool dotnet-serve (veja aqui)

    Agora a forma ultra-rápida, vou usar a pasta wwwroot do tópico anterior como exemplo, basta executar 2 comando:

    dotnet tool install –global dotnet-serve
    dotnet serve -o -S

    O primeiro instala a ferramenta que facilita todo o processo e a segunda instância o server. Mais fácil que isso fica complicado né?! ^^

    Subir um servidor web no dias atuais para uso pessoal e temporário é uma tarefa bem simples e pode ser feita de diversas formas, não perca muito tempo, deixe o tempo que sobrar para publicar sua aplicação em um servidor de produção profissional que por si só exige atenção e uma boa dose de trabalho em alguns casos.

    Até a próxima

    dotnet http-server nodejs python
    Share. Facebook Twitter LinkedIn Telegram WhatsApp Copy Link
    Rodrigo Ferreira
    • Website
    • X (Twitter)
    • LinkedIn

    Programador, apaixonado por games, empreendedor. Formado em Ciência da Computação com especialização em desenvolvimento para web, trabalhei com projetos .Net C#, NodeJs e Python nestes 10 anos de experiência no setor privado, em orgão públicos e na minha startup, o EstoqueMestre. http://rodrigoreisf.com.br

    Posts Relacionados

    O que é a Ecma e qual é sua relação com C#?

    C# Post do Leitor 29 de julho de 20247 Mins Read

    Boas práticas de criação, armazenamento e validação de senhas em .NET

    Asp.net Boas práticas 9 de julho de 20248 Mins Read

    UUID vs ULID: comparação e exemplos em C#

    C# 19 de junho de 20245 Mins Read
    Newsletter

    Digite seu endereço de e-mail para receber notificações de novas publicações por e-mail.

    Junte-se a 25mil outros assinantes
    Posts recentes
    • NewSQL em 2025: O Estado Atual, Tendências e o Futuro dos Bancos de Dados Relacionais Escaláveis
    • 12 Regras Essenciais para Reduzir a Latência de Aplicações
    • Cache Hit Ratio: Como uma Simples Métrica Pode Revolucionar sua Arquitetura
    • Como a Uber calcula o tempo estimado de chegada
    • 30 APIs Gratuitas para desenvolvedores
    Categorias
    • Arquitetura (14)
      • Testes (2)
    • Asp.net (120)
      • C# (89)
      • Mvc (13)
    • Banco de dados (90)
      • NoSql (58)
      • Sql (38)
    • Boas práticas (29)
      • Gestão & Produtividade (1)
      • Metodologias Ágeis (6)
    • Cursos (52)
    • Dicas (105)
    • Front-End (92)
    • IA (1)
    • Linux (6)
    • NodeJS (4)
    • Post do Leitor (9)
    • Python (5)
    • Seo (12)
    • Tecnologia (30)
      • ITIL (1)
      • Padrões de Projeto (4)
    • Testes (2)

    VEJA TAMBÉM

    Cursos
    12 de fevereiro de 20166 Mins Read

    1000 livros gratuitos sobre programação!

    Olha que dica bacana! A pagina só com livros sobre programação é mantida no GitHub…

    30 APIs Gratuitas para desenvolvedores

    Facebook X (Twitter) Instagram LinkedIn

    Type above and press Enter to search. Press Esc to cancel.

    Vá para versão mobile