85 votes

Est-il possible de télécharger une simple structure de fichiers html et javascript vers heroku ?

J'essaie de déployer un de mes projets open source sur heroku, il est par nécessité très simple avec juste du html statique et du javascript. Mais est-ce qu'ils ne supportent pas les sites statiques ? Je préfère ne pas en faire un projet Sinatra si je ne prévois pas d'utiliser autre chose que html et javascript.

~/sites/d4-site $ heroku create --stack cedar
Creating quiet-ice-4769... done, stack is cedar
http://quiet-ice-4769.herokuapp.com/ | git@heroku.com:quiet-ice-4769.git
Git remote heroku added

~/sites/d4-site $ git remote -v
heroku  git@heroku.com:quiet-ice-4769.git (fetch)
heroku  git@heroku.com:quiet-ice-4769.git (push)

~/sites/d4-site $ git push heroku master
Counting objects: 53, done.
Delta compression using up to 2 threads.
Compressing objects: 100% (49/49), done.
Writing objects: 100% (53/53), 206.08 KiB, done.
Total 53 (delta 4), reused 0 (delta 0)

-----> Heroku receiving push
-----> Removing .DS_Store files
 !     Heroku push rejected, no Cedar-supported app detected

215voto

pkanane Points 596

Un moyen simple est de faire passer l'application HTML pour une application PHP. Heroku identifie correctement les applications PHP.

  1. Renommez votre fichier index.html en home.html.

  2. Créez un fichier index.php et incluez votre fichier html d'entrée. Si votre fichier html d'entrée est nommé home.html comme recommandé, votre index.php devrait ressembler à ceci :

    <?php include_once("home.html"); ?>

  3. Dans votre ligne de commande sur la machine à partir de laquelle vous poussez, tapez :

    git add . git commit -m 'your commit message' git push heroku master

Heroku devrait détecter correctement votre application maintenant comme une application php :

-----> PHP app detected
-----> Bundling Apache version 2.2.22
-----> Bundling PHP version 5.3.10
-----> Discovering process types
       Procfile declares types -> (none)
       Default types for PHP   -> web

-----> Compiled slug size: 9.9MB
-----> Launching... done, v3
...

Mad Merci à lemiffe pour son billet de blog : http://www.lemiffe.com/how-to-deploy-a-static-page-to-heroku-the-easy-way/

13voto

Tiago Peczenyj Points 1819

Vous pouvez utiliser le rack pour ce faire :

https://devcenter.heroku.com/articles/static-sites-on-heroku

ou vous pouvez utiliser quelque chose comme Octopress/Jekyll qui utilise sinatra.

Mais vous avez besoin d'une pile minimale pour servir du contenu statique html.

0voto

Hishalv Points 1954

Hmmm... une des raisons pour lesquelles Heroku rejette l'application pourrait être qu'il essaie de détecter le pipeline d'actifs dans les applications rails 3.1.x, je pense.

Pourquoi ne pas créer votre application sur la pile par défaut Bambou en exécutant seulement

heroku create

Ensuite, tous vos js et css peuvent aller dans le dossier public de l'application rails avec le pipeline d'actifs désactivé.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X