How-to-run-things-locally.html 5.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186
  1. <!DOCTYPE html>
  2. <html lang="pt-br">
  3. <head>
  4. <meta charset="utf-8">
  5. <base href="../../../" />
  6. <script src="page.js"></script>
  7. <link type="text/css" rel="stylesheet" href="page.css" />
  8. </head>
  9. <body>
  10. <h1>Como executar localmente</h1>
  11. <p>
  12. Se você usar apenas geometrias procedurais e não carregar nenhuma textura,
  13. as páginas web devem funcionar direto do sistema de arquivos, bastando clicar duas vezes
  14. no arquivo HTML em um gerenciador de arquivos para então funcionar no navegador (você verá <em>file:///yourFile.html</em> na barra de endereço).
  15. </p>
  16. <h2>Conteúdo carregado de arquivos externos</h2>
  17. <div>
  18. <p>
  19. Se você carregar modelos ou texturas de arquivos externos, devido a [link:http://en.wikipedia.org/wiki/Same_origin_policy same origin policy]
  20. dos navegadores, o carregamento de um sistema de arquivos falhará com uma exceção de segurança.
  21. </p>
  22. <p>
  23. Para resolver isso, execute os arquivos de um servidor web local. Isso permitirá acessar a página por:
  24. </p>
  25. <p>
  26. <code>http://localhost/yourFile.html</code>
  27. </p>
  28. <p>
  29. Embora também seja possível alterar as configurações de segurança do navegador ao invés de executar
  30. um servidor local, não recomendamos essa abordagem. Isso pode abrir seu dispositivo para vulnerabilidades,
  31. se o mesmo navegador é usado para navegação regular na web. O uso de um servidor local é uma prática padrão
  32. em desenvolvimento web e explicamos abaixo como instalar e usar um servidor local.
  33. </p>
  34. </div>
  35. <h2>Rodando um servidor local</h2>
  36. <div>
  37. <p>
  38. Muitas linguagens de programação têm servidores HTTP simples embutidos. Eles não são tão
  39. completos quanto servidores de produção como o [link:https://www.apache.org/ Apache] ou o
  40. [link:https://nginx.org NGINX], no entanto devem ser suficientes para testar sua aplicação three.js.
  41. </p>
  42. <h3>Plugins para editores populares de código</h3>
  43. <div>
  44. <p>
  45. Alguns editores de código tem plugins que irão rodar um servidor simples.
  46. </p>
  47. <ul>
  48. <li>[link:https://marketplace.visualstudio.com/items?itemName=yandeu.five-server Five Server] para Visual Studio Code.</li>
  49. <li>[link:https://marketplace.visualstudio.com/items?itemName=ritwickdey.LiveServer Live Server] para Visual Studio Code.</li>
  50. <li>[link:https://atom.io/packages/atom-live-server Live Server] para Atom.</li>
  51. </ul>
  52. </div>
  53. <h3>Servez</h3>
  54. <div>
  55. <p>
  56. [link:https://greggman.github.io/servez Servez] é um servidor simples com uma interface gráfica.
  57. </p>
  58. </div>
  59. <h3>Node.js five-server</h3>
  60. <div>
  61. <p>
  62. Servidor de desenvolvimento com live reload. Para instalar:
  63. </p>
  64. <code>
  65. # Remove live-server (if you have it)
  66. npm -g rm live-server
  67. # Install five-server
  68. npm -g i five-server
  69. # Update five-server (from time to time)
  70. npm -g i five-server@latest
  71. </code>
  72. <p>Para executar (do seu diretório local):</p>
  73. <code>five-server . -p 8000</code>
  74. </div>
  75. <h3>Node.js http-server</h3>
  76. <div>
  77. <p>
  78. O Node.js tem um pacote simples de um servidor HTTP. Para instalar:
  79. </p>
  80. <code>npm install http-server -g</code>
  81. <p>Para executar (do seu diretório local):</p>
  82. <code>http-server . -p 8000</code>
  83. </div>
  84. <h3>Servidor Python</h3>
  85. <div>
  86. <p>
  87. Se você tem [link:http://python.org/ Python] instalado, deve ser suficiente para
  88. executar esse comando (do seu diretório de trabalho):
  89. </p>
  90. <code>
  91. //Python 2.x
  92. python -m SimpleHTTPServer
  93. //Python 3.x
  94. python -m http.server
  95. </code>
  96. <p>Isso vai servir os arquivos do diretório atual para localhost na porta 8000,
  97. isto é, na barra de endereço digite:
  98. </p>
  99. <code>http://localhost:8000/</code>
  100. </div>
  101. <h3>Servidor Ruby</h3>
  102. <div>
  103. <p>
  104. Se você tem Ruby instalado, você poder ter o mesmo resultado executando:
  105. </p>
  106. <code>
  107. ruby -r webrick -e "s = WEBrick::HTTPServer.new(:Port => 8000, :DocumentRoot => Dir.pwd); trap('INT') { s.shutdown }; s.start"
  108. </code>
  109. </div>
  110. <h3>Servidor PHP</h3>
  111. <div>
  112. <p>PHP também tem um servidor web embutido, começando com php 5.4.0:</p>
  113. <code>php -S localhost:8000</code>
  114. </div>
  115. <h3>Lighttpd</h3>
  116. <div>
  117. <p>
  118. Lighttpd é um servidor web de uso geral muito leve. Abordaremos a instalação no OSX
  119. com HomeBrew aqui. Ao contrário dos outros servidores discutidos, Lighttpd é um servidor
  120. completo de produção.
  121. </p>
  122. <ol>
  123. <li>
  124. Instale via homebrew
  125. <code>brew install lighttpd</code>
  126. </li>
  127. <li>
  128. Crie um arquivo de configuração chamado lighttpd.conf no diretório onde você irá executar
  129. o servidor web. Um exemplo está [link:http://redmine.lighttpd.net/projects/lighttpd/wiki/TutorialConfiguration aqui].
  130. </li>
  131. <li>
  132. No arquivo conf, mude o server.document-root para o diretório do qual você quer servir os arquivos.
  133. </li>
  134. <li>
  135. Comece com
  136. <code>lighttpd -f lighttpd.conf</code>
  137. </li>
  138. <li>
  139. Navegue até http://localhost:8000/ e ele servirá os arquivos estáticos do diretório que você
  140. escolheu.
  141. </li>
  142. </ol>
  143. </div>
  144. <h3>IIS</h3>
  145. <div>
  146. <p>
  147. Se você estiver usando o Microsoft IIS como servidor web. Por favor adicione
  148. configurações de tipo MIME em relação à extensão .fbx antes de carregar.
  149. </p>
  150. <code>File name extension: fbx MIME Type: text/plain</code>
  151. <p>
  152. Por padrão, o IIS bloqueia downloads de arquivos .fbx e .obj. Você tem que
  153. configurar o IIS para habilitar que esse tipo de arquivo possa ser baixado.
  154. </p>
  155. </div>
  156. <p>
  157. Outras alternativas simples são [link:http://stackoverflow.com/q/12905426/24874 discutidas aqui] no StackOverflow.
  158. </p>
  159. </div>
  160. </body>
  161. </html>