{"id":28441,"date":"2021-06-10T20:16:00","date_gmt":"2021-06-10T17:16:00","guid":{"rendered":"https:\/\/themewp.inform.click\/?p=28441"},"modified":"2021-10-18T04:00:57","modified_gmt":"2021-10-18T01:00:57","slug":"implante-site-estatico-no-firebase-hosting-gratuitamente","status":"publish","type":"post","link":"https:\/\/themewp.inform.click\/pt-pt\/implante-site-estatico-no-firebase-hosting-gratuitamente\/","title":{"rendered":"Implante site est\u00e1tico no Firebase Hosting gratuitamente"},"content":{"rendered":"<p>A hospedagem Firebase \u00e9 um servi\u00e7o oferecido pelo Google que hospeda sites est\u00e1ticos e din\u00e2micos de forma segura. \u00c9 o melhor servi\u00e7o gratuito para desenvolvedores. Voc\u00ea pode mostrar o design de um site, uma vers\u00e3o de pr\u00e9-produ\u00e7\u00e3o de um site para o cliente, implantando-o no Firebase hosting.<\/p>\n<p>Um usu\u00e1rio pode usar o plano gratuito do Firebase para hospedar um site. O plano gratuito inclui suporte para dom\u00ednio personalizado e SSL, armazenamento de 1 GB. O armazenamento de 1 GB \u00e9 suficiente para sites menores. Para obter uma lista de todos os recursos inclu\u00eddos nos planos gr\u00e1tis e premium, verifique sua p\u00e1gina de <a href=\"https:\/\/firebase.google.com\/pricing\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">pre\u00e7os<\/a>.<\/p>\n<p>Embora o Firebase hosting forne\u00e7a suporte para executar o c\u00f3digo Node.js \/ JavaScript, neste artigo nos concentramos apenas na implanta\u00e7\u00e3o do site est\u00e1tico. Para implantar um site din\u00e2mico no Firebase, escreverei outro artigo no futuro.<\/p>\n<h3>Come\u00e7ando<\/h3>\n<p>Para come\u00e7ar, voc\u00ea deve ter o Node.js instalado em seu sistema. Voc\u00ea pode obter o pacote Node.js para instala\u00e7\u00e3o em seu <a href=\"https:\/\/nodejs.org\/en\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">site oficial<\/a>.<\/p>\n<p>Depois de instalar o Node.js em seu sistema, <a href=\"https:\/\/console.firebase.google.com\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">acesse o console do Firebase<\/a> e crie um projeto clicando na caixa &#8216;Adicionar projeto&#8217;. Preencha todas as informa\u00e7\u00f5es conforme solicitado.<\/p>\n<p>Ao criar o projeto Firebase, voc\u00ea redirecionar\u00e1 para o painel do projeto. Clique em &#8216;Hospedagem&#8217; na barra lateral esquerda e depois em &#8216;Come\u00e7ar&#8217;. Ele abrir\u00e1 uma p\u00e1gina onde voc\u00ea encontrar\u00e1 instru\u00e7\u00f5es para implanta\u00e7\u00e3o. Veremos isso na pr\u00f3xima parte do tutorial.<\/p>\n<h3>Implantar site est\u00e1tico no Firebase Hosting<\/h3>\n<p>Depois de criar um projeto no Firebase, com a ajuda de alguns comandos, podemos implantar um site est\u00e1tico na hospedagem do Firebase. Ele requer que voc\u00ea primeiro instale o Firebase CLI e, em seguida, configure-o localmente.<\/p>\n<h4>Instale a Firebase CLI<\/h4>\n<p>Para a implanta\u00e7\u00e3o, a primeira coisa que voc\u00ea precisa fazer \u00e9 instalar o Firebase CLI. Voc\u00ea instalou o Node.js, portanto, use o npm para instalar o CLI. Abra o terminal e instale a Firebase CLI usando npm da seguinte maneira:<\/p>\n<pre><code>npm install -g firebase-tools<\/code><\/pre>\n<p>Observe que estamos instalando as ferramentas do Firebase globalmente usando <code>-g<\/code>. Ao fazer isso, voc\u00ea pode executar comandos do Firebase a partir de qualquer diret\u00f3rio em sua m\u00e1quina. Agora, a partir do terminal, execute o pr\u00f3ximo comando:<\/p>\n<pre><code>firebase login<\/code><\/pre>\n<p>Ele pode redirecion\u00e1-lo para a p\u00e1gina de login da conta do Google. Basta seguir as etapas conforme sugerido. \u00c9 apenas um processo de autoriza\u00e7\u00e3o com o Firebase, ent\u00e3o o projeto ser\u00e1 implantado apenas na sua conta.<\/p>\n<h4>Inicializar e implantar<\/h4>\n<p>Depois de autorizar sua conta do Google com Firebase CLI, voc\u00ea precisa inicializar o Firebase no diret\u00f3rio raiz do projeto. Para isso, execute o comando abaixo no diret\u00f3rio raiz do seu projeto.<\/p>\n<pre><code>firebase init<\/code><\/pre>\n<p>Ao executar o comando acima, o CLI pede uma op\u00e7\u00e3o diferente para escolher. Voc\u00ea deve selecionar a op\u00e7\u00e3o &#8216;Hospedagem&#8217; navegando por uma seta e pressionando a tecla de espa\u00e7o. Pressione Enter ap\u00f3s selecionar a op\u00e7\u00e3o &#8216;Hospedagem&#8217;.<\/p>\n<p><a href=\"https:\/\/themewp.inform.click\/wp-content\/uploads\/2021\/04\/post-20272-6081d60826c88.png\" data-rel=\"lightbox\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/themewp.inform.click\/wp-content\/uploads\/2021\/04\/post-20272-6081d60826c88.png\" alt=\"Implante site est\u00e1tico no Firebase Hosting gratuitamente\" ><\/a><\/p>\n<p>Em seguida, selecione o projeto que voc\u00ea criou no Firebase console. Pressione a tecla Enter. A pr\u00f3xima pergunta seria: O que voc\u00ea deseja usar como seu diret\u00f3rio p\u00fablico? (p\u00fablico). N\u00e3o h\u00e1 necessidade de fazer nada aqui. Basta apertar a tecla Enter.<\/p>\n<p>Para a pr\u00f3xima pergunta Configurar como um aplicativo de p\u00e1gina \u00fanica (reescrever todos os URLs em \/index.html)? (s \/ N), pressione N e pressione Enter, pois n\u00e3o somos um aplicativo de implanta\u00e7\u00e3o de p\u00e1gina \u00fanica.<\/p>\n<p>Ap\u00f3s este comando, voc\u00ea ver\u00e1 alguns arquivos criados em seu diret\u00f3rio raiz junto com a <code>public<\/code>pasta. Este <code>public<\/code>diret\u00f3rio servir\u00e1 como uma raiz para implanta\u00e7\u00e3o. Neste <code>public<\/code>diret\u00f3rio voc\u00ea precisa manter seus arquivos de projeto.<\/p>\n<p>Agora, vamos criar p\u00e1ginas HTML est\u00e1ticas. Como este tutorial \u00e9 apenas para fins de demonstra\u00e7\u00e3o, estou criando p\u00e1ginas HTML b\u00e1sicas.<\/p>\n<p><strong>public \/ index.html<\/strong><\/p>\n<pre><code>&lt;!DOCTYPE html&gt;\n&lt;html lang=\"en\"&gt;\n&lt;head&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;meta charset=\"UTF-8\"&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\"&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;meta http-equiv=\"X-UA-Compatible\" content=\"ie=edge\"&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;title&gt;Document&lt;\/title&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;link rel=\"stylesheet\" href=\"style.css\"&gt;\n&lt;\/head&gt;\n&lt;body&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;h1&gt;This is Index Page&lt;\/h1&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;a href=\"index.html\"&gt;Home&lt;\/a&gt; | &lt;a href=\"about.html\"&gt;About&lt;\/a&gt;\n&lt;\/body&gt;\n&lt;\/html&gt;<\/code><\/pre>\n<p><strong>public \/ about.html<\/strong><\/p>\n<pre><code>&lt;!DOCTYPE html&gt;\n&lt;html lang=\"en\"&gt;\n&lt;head&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;meta charset=\"UTF-8\"&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\"&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;meta http-equiv=\"X-UA-Compatible\" content=\"ie=edge\"&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;title&gt;Document&lt;\/title&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;link rel=\"stylesheet\" href=\"style.css\"&gt;\n&lt;\/head&gt;\n&lt;body&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;h1&gt;This is About Page&lt;\/h1&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;a href=\"index.html\"&gt;Home&lt;\/a&gt; | &lt;a href=\"about.html\"&gt;About&lt;\/a&gt;\n&lt;\/body&gt;\n&lt;\/html&gt;<\/code><\/pre>\n<p><strong>public \/ style.css<\/strong><\/p>\n<pre><code>h1 {\n\u00a0\u00a0\u00a0\u00a0color: blueviolet;\n}<\/code><\/pre>\n<p>Estas s\u00e3o as nossas p\u00e1ginas est\u00e1ticas que iremos implementar no Firebase hosting.<\/p>\n<p>Se voc\u00ea quiser testar o projeto localmente antes da implanta\u00e7\u00e3o, execute o comando serve da seguinte maneira:<\/p>\n<pre><code>firebase serve<\/code><\/pre>\n<p>Ele iniciar\u00e1 seu servidor local em <a href=\"http:\/\/localhost:5000\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">http: \/\/ localhost: 5000<\/a>. Teste seu projeto e se tudo estiver bem, implante-o usando o comando:<\/p>\n<pre><code>firebase deploy<\/code><\/pre>\n<p>Ap\u00f3s a conclus\u00e3o da implanta\u00e7\u00e3o, voc\u00ea deve ver o URL de hospedagem no console.<\/p>\n<p><a href=\"https:\/\/themewp.inform.click\/wp-content\/uploads\/2021\/04\/post-20272-6081d60826c88.png\" data-rel=\"lightbox\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/themewp.inform.click\/wp-content\/uploads\/2021\/04\/post-20272-6081d60826c88.png\" alt=\"Implante site est\u00e1tico no Firebase Hosting gratuitamente\" ><\/a><\/p>\n<p>Execute o URL de hospedagem no navegador e voc\u00ea ver\u00e1 que seu site foi implantado com sucesso. Observe que voc\u00ea pode implantar seu projeto quantas vezes. Ap\u00f3s suas altera\u00e7\u00f5es, apenas execute o comando de implanta\u00e7\u00e3o e seu site implantar\u00e1 com a nova vers\u00e3o.<\/p>\n<h3>Reverter sua vers\u00e3o<\/h3>\n<p>O Firebase mant\u00e9m um hist\u00f3rico de todas as suas vers\u00f5es de implanta\u00e7\u00e3o. Voc\u00ea pode at\u00e9 mesmo reverter para a vers\u00e3o mais antiga. V\u00e1 para a p\u00e1gina Firebase Hosting, onde voc\u00ea encontrar\u00e1 uma op\u00e7\u00e3o de revers\u00e3o (supondo que voc\u00ea tenha implantado mais de uma vers\u00e3o).<\/p>\n<p><a href=\"https:\/\/themewp.inform.click\/wp-content\/uploads\/2021\/04\/post-20272-6081d60826c88.png\" data-rel=\"lightbox\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/themewp.inform.click\/wp-content\/uploads\/2021\/04\/post-20272-6081d60826c88.png\" alt=\"Implante site est\u00e1tico no Firebase Hosting gratuitamente\" ><\/a><\/p>\n<p>Ao fazer uma revers\u00e3o para as vers\u00f5es, voc\u00ea pode alternar entre cada vers\u00e3o do seu site diretamente. \u00c9 simples e \u00fatil durante o est\u00e1gio de design e desenvolvimento.<\/p>\n<p>Espero que voc\u00ea tenha aprendido o b\u00e1sico sobre o processo de implanta\u00e7\u00e3o da hospedagem Firebase. Por favor, compartilhe seus pensamentos e sugest\u00f5es na se\u00e7\u00e3o de coment\u00e1rios abaixo.<\/p>\n<h4>Artigos relacionados<\/h4>\n<ul>\n<li><a href=\"https:\/\/themewp.inform.click\/pt-pt\/como-conectar-o-firebase-realtime-database-ao-formulario-do-seu-site\/\" title=\"Conecte o Firebase Realtime Database ao formul\u00e1rio do seu site\">Conecte o Firebase Realtime Database ao formul\u00e1rio do seu site<\/a><\/li>\n<li><a href=\"https:\/\/themewp.inform.click\/pt-pt\/carregar-arquivos-para-o-amazon-s3-usando-aws-php-sdk\/\" title=\"Carregar arquivos para Amazon S3 usando AWS PHP SDK\">Carregar arquivos para Amazon S3 usando AWS PHP SDK<\/a><\/li>\n<li><a href=\"https:\/\/themewp.inform.click\/pt-pt\/como-fazer-upload-de-imagens-usando-php-no-cloudinary-um-servico-gratuito-de-hospedagem-de-imagens\/\" title=\"Upload de imagens usando PHP no Cloudinary - um servi\u00e7o gratuito de hospedagem de imagens\">Upload de imagens usando PHP no Cloudinary &#8211; um servi\u00e7o gratuito de hospedagem de imagens<\/a><\/li>\n<\/ul>\n<p><div id=\"PostUnique_PostSource\" style=\"padding-top: 50px\">Fonte de grava\u00e7\u00e3o:  <a target=\"_blank\" rel=\"noopener nofollow\" href=\"\/\/artisansweb.net\" class=\"external external_icon\">artisansweb.net<\/a><\/div><\/p>\n","protected":false},"excerpt":{"rendered":"<p>A hospedagem Firebase oferece plano gratuito com at\u00e9 1 GB de armazenamento. Ele tamb\u00e9m adiciona SSL ao site implantado. Neste artigo, mostro passo a passo<\/p>\n","protected":false},"author":1,"featured_media":20273,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_wp_rev_ctl_limit":""},"categories":[417],"tags":[848],"class_list":["post-28441","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-diversos","tag-affiai-pt-pt"],"_links":{"self":[{"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/posts\/28441","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/comments?post=28441"}],"version-history":[{"count":0,"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/posts\/28441\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/media\/20273"}],"wp:attachment":[{"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/media?parent=28441"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/categories?post=28441"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/tags?post=28441"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}