2013-06-27 25 views
11

Posso utilizzare Heroku per distribuire un prototipo HTML?Distribuisci solo l'app HTML su Heroku?

I miei prototipi HTML in diretta su Github e Heroku sarebbero un buon modo per distribuirli in modo che i client possano visualizzarli.

Sembra che questo non sia supportato, poiché Heroku si aspetta una struttura Rails/NodeJS/[inserisci lingua qui] o non funzionerà.

Push rejected, no Cedar-supported app detected 

Ci sono trucchi per aggirare questo problema?

risposta

2

Non l'ho fatto prima ma da quando hai menzionato l'uso di github. Perché non usare Github Pages per mostrare il prototipo.

+0

ho bisogno gli URL di essere unguessable e privata. – Wolfr

+0

Ah abbastanza giusto. Mie scuse. Interpretato come se si volesse visualizzare un portfolio. – IainS

6

La soluzione più semplice è quella di rinominare il file predefinito in index.php e ridistribuire. Heroku lo rileverà come sito PHP e utilizzerà quel buildpack.

In alternativa, è possibile seguire questa guida https://devcenter.heroku.com/articles/static-sites-ruby per configurare un'applicazione sinatra per l'hosting.

+0

Grazie per le idee. Io uso Jekyll, quindi rinominare il file principale in .php in modo specifico per la distribuzione che interromperà il mio flusso di sviluppo. Questo non lo renderebbe più "automatico" che è più o meno il punto di utilizzo di Heroku. – Wolfr

+0

in questo caso, usa un pacchetto build Jekyll :) https://github.com/mattmanning/heroku-buildpack-ruby-jekyll –

+0

Questa sarebbe una buona idea se Jekyll fosse l'unica parte della build. Tuttavia, io uso un sistema di build "complicato" che coinvolge più parti (vedi https://github.com/happyplan/happyplan - jekyll, bussola, compressione dell'immagine, ecc.) Quindi in pratica voglio poter caricare il "risultato" compilato del mio processo di compilazione e non i file reali di Jekyll. Immagino che ci debba essere una soluzione per questo dato che ad esempio le app angolari saranno anche "solo HTML". – Wolfr

0

È sempre possibile utilizzare un buildpack nginx per eseguire nginx su Heroku:

https://github.com/neilmiddleton/heroku-buildpack-nginx

L'ho usato con grande successo per gestire una grande serie di reindirizzamenti complessi e agire come un proxy inverso per un nuova app di heroku per un'applicazione vecchia e defunta. Ecco un semplice esempio di configurazione che consente di ottenere un sito statico attivo e funzionante: https://gist.github.com/leklund/5877422.

5

La soluzione migliore sarebbe utilizzare un buildpack progettato per l'hosting di contenuto statico.

Suggerirei il buildpack sperimentale heroku/heroku-buildpack-static. In breve, è sufficiente impostare il buildpack:

heroku buildpacks:set https://github.com/heroku/heroku-buildpack-static.git 

e aggiungere un static.json che indica quale directory contiene le risorse statiche:

{"root":"public"} 
+0

Questo ha funzionato per me. Ho appena installato un sito statico poiché le pagine statiche non sono un'opzione su Google Drive o DropBox –