Дополнительно
Возможно ли загрузить простую структуру файлов html и javascript в heroku?
Я'пытаюсь развернуть свой проект с открытым исходным кодом на heroku, он по необходимости очень простой, только статический html и javascript. Но разве они не поддерживают статические сайты? Я бы не хотел делать проект на Sinatra, если я не планирую использовать ничего, кроме html и 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
80
9
Простой способ - замаскировать HTML-приложение под PHP-приложение. Heroku правильно идентифицирует PHP-приложения.
Переименуйте файл index.html в home.html.
Создайте файл index.php и включите в него ваш входной html-файл. Если ваш входной HTML-файл назван home.html, как рекомендуется, ваш index.php должен выглядеть следующим образом:
<?php include_once("home.html"); ?>
.В командной строке на машине, с которой вы выполняете загрузку, введите:
git add . git commit -m 'ваше сообщение о фиксации' git push heroku master
Теперь Heroku должен правильно определить ваше приложение как php-приложение:
Mad Спасибо lemiffe за его статью в блоге: http://www.lemiffe.com/how-to-deploy-a-static-page-to-heroku-the-easy-way/
Вот более элегантный метод: Просто добавьте файл
package.json
, который указывает Heroku использовать harp в качестве вашего сервера:и затем развернуть на Heroku. Готово!
Дополнительная информация: https://harpjs.com/docs/deployment/heroku
Для этого можно использовать стойку:
https://devcenter.heroku.com/articles/static-sites-on-heroku
или вы можете использовать что-то вроде Octopress/Jekyll, который использует sinatra.
Но вам нужен минимальный стек для обслуживания html статического контента
Вот что сработало для меня:
Если точкой входа является
main.html
, создайтеindex.php
с этой единственной строкой содержимого:а затем выполните следующие действия:
Перейдите на сайт http://myApp.herokuapp.com/, и ваше приложение должно быть теперь в сети.
Есть очень простой способ сделать это, на случай, если кому-то покажется, что ответы выше сложны для понимания.
У вас есть статический сайт с корнем в
index.html
(допустим), теперь вы хотите развернуть его на Heroku, как это сделать?Теперь просто запустите
git push heroku master
и все готово!Я знаю, что это может быть немного старым, но я закончил тем, что использовал Vienna Gemw для развертывания этого, в основном это небольшое приложение Rack, которое позволит вам обслуживать все в вашей общей папке (css, изображения, js, html) с помощью всего пары строк Ruby:
Также для развертывания этого приложения на heroku вам нужно создать Gemfile:
Затем запустите bundle install, если у вас не установлен гем bundle, просто запустите его в терминале:
Вот, собственно, и все, больше информации вы можете найти на сайте: http://kmikael.com/2013/05/28/creating-static-sites-in-ruby-with-rack/.
Выполните следующие шаги
Шаг 1
Введите
touch composer.json index.php index.html
Шаг 2 в файле index.php введите:
, а в composer.json введите {}
Шаг 3
Если ваша веб-страница содержит HTML, CSS и JavaScript, выполните всего 2 шага:
Создайте один файл с именем index.html (сохраните в нем все), например: script, stylesheet и body.
Теперь измените эти файлы, скопируйте и вставьте эти же файлы, но измените домен на index.php.
Затем разверните на Heroku.
Таким образом, этот метод поможет вам развернуть ваши веб-страницы.
Хммм... одной из причин, по которой heroku отклоняет приложение, может быть то, что он пытается обнаружить asset pipeline в приложениях rails 3.1.x, я думаю.
Почему бы не создать ваше приложение на стеке по умолчанию Bamboo, запустив просто
Тогда все ваши js и css могут попасть в папку public в приложении rails с деактивированным asset pipeline.