[javascript] 간단한 html 및 javascript 파일 구조를 heroku에 업로드 할 수 있습니까?

내 오픈 소스 프로젝트를 heroku에 배포하려고하는데 정적 html과 javascript만으로 매우 간단합니다. 그러나 정적 사이트를 지원하지 않습니까? html과 javascript 만 사용할 계획이 없다면 Sinatra 프로젝트로 만들지 않겠습니다.

~/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



답변

랙을 사용하여 다음을 수행 할 수 있습니다.

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

또는 sinatra를 사용하는 Octopress / Jekyll과 같은 것을 사용할 수 있습니다.

하지만 HTML 정적 콘텐츠를 제공하려면 최소 스택이 필요합니다.


답변

간단한 방법은 HTML 앱을 PHP 앱으로 가장하는 것입니다. Heroku는 PHP 앱을 올바르게 식별합니다.

  1. index.html 파일의 이름을 home.html로 바꿉니다.
  2. index.php 파일을 만들고 항목 html 파일을 포함합니다. HTML 항목 파일의 이름이 권장되는대로 home.html이면 index.php는 다음과 같아야합니다.

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

  3. 푸시하려는 컴퓨터의 명령 줄에 다음을 입력합니다.

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

Heroku는 이제 앱을 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 lemiffe의 블로그 게시물에 감사드립니다 : http://www.lemiffe.com/how-to-deploy-a-static-page-to-heroku-the-easy-way/


답변

다음은 더 우아한 방법입니다. package.jsonHeroku가 서버로 하프 를 사용하도록 지시 하는 파일을 추가하면됩니다 .

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

그런 다음 Heroku에 배포합니다. 끝난!

추가 정보 : https://harpjs.com/docs/deployment/heroku


답변

나를 위해 일한 것은 다음과 같습니다.

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

진입 점이이면 다음 한 줄의 콘텐츠로 main.html만듭니다 index.php.

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

다음 단계를 수행하십시오.

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

http://myApp.herokuapp.com/으로 이동하면 앱이 이제 온라인 상태가됩니다.


답변

위의 답변을 따르기 어려운 경우를 대비하여 매우 쉬운 방법이 있습니다.

루트가있는 정적 웹 사이트가 있습니다 index.html. 이제 Heroku에 배포하려고합니다. 어떻게?

git init # initialise a git repo

git add -A # add the files

git commit -m "init commit" # commit the files

# Now add two files in the root, composer.json and index.php like so -
touch composer.json
touch index.php

# Then add this line to index.php, making a PHP app and just asking it to display index.html -
<?php include_once("index.html"); ?>

# Now open composer.json and add an empty object -
{}

이제 간단히 실행 git push heroku master하면 완료됩니다!


답변

조금 오래되었을 수도 있지만 결국 Vienna Gemw를 사용하여 배포했습니다. 기본적으로 공용 폴더 (css, 이미지, js, html)에있는 모든 항목을 단 몇 줄로 제공 할 수있는 작은 랙 응용 프로그램입니다. 루비의 :

require 'vienna'
run Vienna

또한 이것을 heroku에 배포하려면 Gemfile을 만들어야합니다.

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

그런 다음 번들 설치를 실행하십시오. 번들 gem이 설치되어 있지 않은 경우 터미널에서 실행하십시오.

sudo gem install bundle

그리고 그 정도면 http://kmikael.com/2013/05/28/creating-static-sites-in-ruby-with-rack/ 에서 더 많은 정보를 얻을 수 있습니다.


답변

이 단계를 따르십시오

1 단계

유형 touch composer.json index.php index.html


index.php 유형의 2 단계 :

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

composer.json 유형 {}

3 단계

git add .

git commit -m "[your message]"

git push ['yourrepo'] ['yourbranch']