Is het mogelijk om een ​​eenvoudige html- en javascript-bestandsstructuur naar heroku te uploaden?

Ik probeer een open source-project van mij in Heroku te implementeren, het is noodzakelijkerwijs heel eenvoudig met alleen statische html en javascript. Maar ondersteunen ze geen statische sites? Ik maak er liever geen Sinatra-project van als ik niet van plan ben ooit iets anders te gebruiken dan html en javascript.

~/sites/d4-site $ heroku create --stack cedar
Creating quiet-ice-4769... done, stack is cedar
http://quiet-ice-4769.herokuapp.com/ | [email protected]:quiet-ice-4769.git
Git remote heroku added
~/sites/d4-site $ git remote -v
heroku  [email protected]:quiet-ice-4769.git (fetch)
heroku  [email protected]: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

Antwoord 1, autoriteit 100%

Een eenvoudige manier is om de HTML-app te vermommen als een PHP-app.
Heroku identificeert PHP-apps correct.

  1. Hernoem je index.html-bestand naar home.html.
  2. Maak een index.php-bestand en voeg uw invoer-html-bestand toe. Als uw HTML-invoerbestand de naam home.html heeft zoals aanbevolen, zou uw index.php er als volgt uit moeten zien:

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

  3. Typ in uw opdrachtregel op de machine waarvan u pusht:

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

Heroku zou je app nu correct moeten detecteren als een php-app:

-----> 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
...

Gek Dank aan lemiffe voor zijn blogpost: http://www.lemiffe.com/how-to-deploy-a-static-page-to-heroku-the-easy-way/


Antwoord 2, autoriteit 18%

Hier is een elegantere methode: voeg gewoon een bestand toe met de naam package.jsondat Heroku vertelt te gebruiken harpals uw server:

{
  "name": "my-static-site",
  "version": "1.0.0",
  "description": "This will load any static html site",
  "scripts": {
    "start": "harp server --port $PORT"
  },
  "dependencies": {
    "harp": "*"
  }
}

en vervolgens implementeren in Heroku. Klaar!

Meer informatie: https://harpjs.com/docs/deployment/heroku


Antwoord 3, autoriteit 6%

U kunt hiervoor rack gebruiken:

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

of je kunt iets als Octopress/Jekyll gebruiken die sinatra gebruikt.

Maar je hebt een minimale stapel nodig om statische HTML-inhoud weer te geven


Antwoord 4, autoriteit 6%

Dit is wat voor mij werkte:

cd myProject 
git init
heroku create myApp 
heroku git:remote -a myApp 

Als het startpunt main.htmlis, maak dan index.phpaan met deze enkele regel met inhoud:

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

en voer vervolgens de volgende stappen uit:

echo '{}' > composer.json 
git add . 
git commit -am "first commit" 
git push heroku master

Ga naar http://myApp.herokuapp.com/en je app zou nu online moeten zijn.


Antwoord 5, autoriteit 2%

Er is een veel eenvoudigere manier om dit te doen, voor het geval iemand de andere antwoorden moeilijk te volgen vindt.

Stel dat je je statische website hebt met de root op index.html. Hoe wil je het nu inzetten voor Heroku?

# initialise a git repo
git init
# add the files
git add -A
# commit the files
git commit -m "init commit"
# Now add two files at the root, composer.json and index.php
touch composer.json
touch index.php
# add this line to index.php, making a PHP app that simply displays index.html
<?php include_once("index.html"); ?>
# add an empty object to composer.json
{}

Voer nu gewoon git push heroku masteruit en je bent klaar!


Antwoord 6

Ik weet dat dit misschien een beetje oud is, maar uiteindelijk heb ik Vienna Gemw gebruikt om dit te implementeren, in feite is het een kleine Rack-toepassing waarmee je alles in je openbare map (css, afbeeldingen, js, html) kunt weergeven met slechts een paar regels Ruby:

require 'vienna'
run Vienna

Om dit op heroku te implementeren, moet je ook een Gemfile maken:

source 'https://rubygems.org'
gem 'rack'
gem 'vienna'

Voer vervolgens de bundelinstallatie uit, als u de bundel-edelsteen niet hebt geïnstalleerd, voer het dan gewoon uit op uw terminal:

sudo gem install bundle

En dat is zowat alles, u kunt meer informatie vinden op: http://kmikael.com/2013/05/28/creating-static-sites-in-ruby-with-rack/


Antwoord 7

Volg deze stappen

Stap 1

Typ touch composer.json index.php index.html

Stap 2
typ in index.php:

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

en typ in de composer.json {}

Stap 3

git add .
git commit -m "[your message]"
git push ['yourrepo'] ['yourbranch']

Antwoord 8

2020-update:

Als je een lege pagina krijgt met het hier vermelde PHP-antwoord, probeer dan dit –
Als uw startpagina op index.htmlstaat:

echo '<?php header( 'Location: /index.html' ) ;  ?>' > index.php
echo '{}' > composer.json

Een Git-repo aanmaken en vastleggen na het toevoegen van bestanden :

git init
git add .
git commit -m "My site ready for deployment."

Heroku-implementatie –

heroku login
heroku apps:create my-static-site-example
git push heroku master

Antwoord 9

Hmmm… een reden waarom Heroku de app afwijst, zou kunnen zijn dat het de asset-pijplijn probeert te detecteren in rails 3.1.x-apps, denk ik.

Waarom maakt u uw app niet op de standaardstack Bamboodoor gewoon

heroku create

Dan kunnen al je js en css naar de openbare map in de rails-app gaan met de activapijplijn gedeactiveerd.


Antwoord 10

Nou, wanneer uw webpagina’s HTML, CSS en JavaScript bevatten, volg dan slechts 2 stappen:

1) Maak een bestand met de naam index.html (bewaar alles erin) ex:script,stylesheet & lichaam.

2) Verander nu dit bestand, kopieer en plak hetzelfde bestand maar verander het domein in index.php

Vervolgens inzetten op een Heroku.

Vandaar dat deze methode u zal helpen bij het implementeren van uw webpagina’s

Other episodes