简体   繁体   中英

How to create Phaser.js site on Heroku?

I am trying to create a site on Heroku and I just have an HTML file that calls a javascript file https://github.com/abdalah/ZakInDaBox . I'm not sure if it's the package.json file or something else, but no matter what I do, I can deploy the app successfully, but I only get an application error when entering the site. It also keeps adding the Node.js buildpack and I am not using Node, so I don't know why it's doing that. This is my build log:

-----> Node.js app detected
-----> Creating runtime environment

       NPM_CONFIG_LOGLEVEL=error
       NPM_CONFIG_PRODUCTION=true
       NODE_VERBOSE=false
       NODE_ENV=production
       NODE_MODULES_CACHE=true
-----> Installing binaries
       engines.node (package.json):  unspecified
       engines.npm (package.json):   unspecified (use default)

       Resolving node version 6.x via semver.io...
       Downloading and installing node 6.11.0...
       Using default npm version: 3.10.10
-----> Restoring cache
       Loading 2 from cacheDirectories (default):
       - node_modules (exists - skipping)
       - bower_components (not cached - skipping)
-----> Building dependencies
       Prebuild detected (node_modules already exists)
       Rebuilding any native modules
       grunt@1.0.1 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/grunt
        coffee-script@1.10.0 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/coffee-script
       dateformat@1.0.12 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/dateformat
       get-stdin@4.0.1 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/get-stdin
       meow@3.7.0 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/meow
       camelcase-keys@2.1.0 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/camelcase-keys
       camelcase@2.1.1 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/camelcase
       map-obj@1.0.1 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/map-obj
       decamelize@1.2.0 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/decamelize
       loud-rejection@1.6.0 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/loud-rejection
       currently-unhandled@0.4.1 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/currently-unhandled
       array-find-index@1.0.2 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/array-find-index
       signal-exit@3.0.2 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/signal-exit
       minimist@1.2.0 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/minimist
       normalize-package-data@2.3.8 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/normalize-package-data
       hosted-git-info@2.4.2 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/hosted-git-info
       is-builtin-module@1.0.0 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/is-builtin-module
       builtin-modules@1.1.1 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/builtin-modules
       semver@5.3.0 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/semver
       validate-npm-package-license@3.0.1 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/validate-npm-package-license
       spdx-correct@1.0.2 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/spdx-correct
       spdx-license-ids@1.2.2 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/spdx-license-ids
       spdx-expression-parse@1.0.4 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/spdx-expression-parse
       object-assign@4.1.1 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/object-assign
       read-pkg-up@1.0.1 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/read-pkg-up
       find-up@1.1.2 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/find-up
       path-exists@2.1.0 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/path-exists
       pinkie-promise@2.0.1 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/pinkie-promise
       pinkie@2.0.4 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/pinkie
       read-pkg@1.1.0 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/read-pkg
       load-json-file@1.1.0 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/load-json-file
       graceful-fs@4.1.11 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/graceful-fs
       parse-json@2.2.0 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/parse-json
       error-ex@1.3.1 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/error-ex
       is-arrayish@0.2.1 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/is-arrayish
       pify@2.3.0 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/pify
       strip-bom@2.0.0 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/strip-bom
       is-utf8@0.2.1 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/is-utf8
       path-type@1.1.0 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/path-type
       redent@1.0.0 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/redent
       indent-string@2.1.0 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/indent-string
       repeating@2.0.1 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/repeating
       is-finite@1.0.2 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/is-finite
       number-is-nan@1.0.1 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/number-is-nan
       strip-indent@1.0.1 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/strip-indent
       trim-newlines@1.0.0 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/trim-newlines
       eventemitter2@0.4.14 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/eventemitter2
       exit@0.1.2 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/exit
       findup-sync@0.3.0 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/findup-sync
       glob@5.0.15 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/findup-sync/node_modules/glob
       inflight@1.0.6 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/inflight
       once@1.4.0 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/once
       wrappy@1.0.2 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/wrappy
       inherits@2.0.3 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/inherits
       minimatch@3.0.4 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/minimatch
       brace-expansion@1.1.7 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/brace-expansion
       balanced-match@0.4.2 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/balanced-match
       concat-map@0.0.1 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/concat-map
       path-is-absolute@1.0.1 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/path-is-absolute
       glob@7.0.6 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/glob
       fs.realpath@1.0.0 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/fs.realpath
       grunt-cli@1.2.0 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/grunt/node_modules/grunt-cli
       grunt-known-options@1.1.0 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/grunt-known-options
       nopt@3.0.6 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/nopt
       abbrev@1.1.0 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/abbrev
       resolve@1.1.7 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/resolve
       grunt-legacy-log@1.0.0 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/grunt-legacy-log
       colors@1.1.2 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/colors
       grunt-legacy-log-utils@1.0.0 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/grunt-legacy-log-utils
       chalk@1.1.3 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/chalk
       ansi-styles@2.2.1 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/ansi-styles
       escape-string-regexp@1.0.5 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/escape-string-regexp
       has-ansi@2.0.0 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/has-ansi
       ansi-regex@2.1.1 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/ansi-regex
       strip-ansi@3.0.1 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/strip-ansi
       supports-color@2.0.0 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/supports-color
       lodash@4.3.0 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/grunt-legacy-log-utils/node_modules/lodash
       hooker@0.2.3 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/hooker
       lodash@3.10.1 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/lodash
       underscore.string@3.2.3 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/underscore.string
       grunt-legacy-util@1.0.0 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/grunt-legacy-util
       async@1.5.2 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/async
       getobject@0.1.0 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/getobject
       lodash@4.3.0 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/grunt-legacy-util/node_modules/lodash
       which@1.2.14 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/which
       isexe@2.0.0 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/isexe
       iconv-lite@0.4.17 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/iconv-lite
       js-yaml@3.5.5 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/js-yaml
       argparse@1.0.9 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/argparse
       sprintf-js@1.0.3 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/sprintf-js
       esprima@2.7.3 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/esprima
       rimraf@2.2.8 /tmp/build_54c264fe0a55ed946f577fa695b12b68/abdalah-ZakInDaBox-61d5e6e/node_modules/rimraf
       Installing any new modules (package.json)
-----> Caching build
       Clearing previous node cache
       Saving 2 cacheDirectories (default):
       - node_modules
       - bower_components (nothing to cache)
-----> Build succeeded!
 !     This app may not specify any way to start a node process
       https://devcenter.heroku.com/articles/nodejs-support#default-web-process-type
-----> Discovering process types
       Procfile declares types     -> (none)
       Default types for buildpack -> web
-----> Compressing...
       Done: 21.6M
-----> Launching...
       Released v25
       https://zakindabox.herokuapp.com/ deployed to Heroku

Edit: I've changed my app to be a Node.js app because Heroku requires an application to have a buildpack and can't do simple HTML pages.

If heroku identifies package.json then it will treat it as a node.js app. Heroku will then look for suitable packages that help your app to serve the html files. packages like express, hapi are used to create advanced to basic file serving in node.js. You have to install that to make your app serve the file.

Easy instructions are available here for node.js apps https://devcenter.heroku.com/articles/getting-started-with-nodejs#introduction

I don't think you can simply host html file in heroku. You app must follow some stack that is a limitation in heroku.

But you can choose the stack you want from the list. https://devcenter.heroku.com/start

If it's just a static site then why not use github pages, this is just my personal opinion.

You have to create index.php in your project folder, put this line in

<?php header( 'Location: /index.html' ) ;  ?>

"index.html" or whenever is your div id="game"

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM