我正在建立我的投资组合,并与HTML/CSS和Javascript简单的 eclipse 刻草图项目。我试图在Heroku主机的网站,但我得到这个错误:
remote: ! No default language could be detected for this app.
remote: HINT: This occurs when Heroku cannot detect the buildpack to use for this application automatically.
remote: See https://devcenter.heroku.com/articles/buildpacks
这基本上是一个静态的网站,我真的不需要一个构建包,有没有什么办法,我仍然可以推我有Heroku?
5条答案
按热度按时间piv4azn71#
Heroku通常用于部署应用程序,而不是静态站点。我发现使用GitHub页面更容易用于静态站点托管。如果您的项目已经在GitHub上,只需转到您的存储库的设置选项卡,滚动到GitHub页面部分,然后选择您要部署的存储库分支。**edit -只需确保您的主页html文件标题为index.html
但是如果您出于任何原因确实需要使用Heroku,here is a guide on how to do so.它展示了如何创建静态站点所需的composer.json和index.php。
7tofc5zh2#
您可以执行以下步骤:-
**1)**通过运行
touch composer.json
将名为composer.json
的文件添加到根目录**2)**通过运行
touch index.php
将名为index.php
的文件添加到根目录**3)**将主页(例如index.html)重命名为
home.html
**4)**在
index.php
中,添加以下行:<?php include_once("home.html"); ?>
**5)**在
composer.json
中,添加以下行:{}**6)**运行
git push heroku master
或
在您的网站目录中运行以下命令
1)$
echo '{}' > composer.json
2)$
echo '<?php include_once("home.html"); ?>' > index.php
3)$
mv index.html home.html
(如果您已经有一个HTML文件名index
)感谢@wh1tney这里是她帖子的链接。
链接:-https://gist.github.com/wh1tney/2ad13aa5fbdd83f6a489
0kjbasz63#
您可以尝试遵循以下步骤:
1.将
index.html
文件重命名为home.html1.在根目录中创建名为
index.php
的文件1.在文件
<?php include_once("home.html"); ?>
中写入以下行1.现在,创建一个名为
composer.json
的文件,并在其中写入以下行:{}1.现在说$ git add。
1.$ git commit -m“正在部署静态--错误,动态站点到heroku”
输入您的Heroku凭据:
电子邮件:
<YOUR HEROKU EMAIL>
密码:
<YOUR HEROKU PASSWORD>
agxfikkp4#
下面是一个更简单的策略:
在命令提示字符中巡览至您的项目:
在终端或命令提示符下登录到heroku:
注意:不要将
index.html
文件重命名为home.html
。这不适合此策略。创建一个
index.php
文件并插入这一行代码(<?php header( 'Location: /index.html'
);?〉进入其中:将更改添加到git:
然后,您需要提交或保存对站点所做的所有更改,并附上一条消息来描述您所做的更改。
现在,您希望在Heroku上创建站点。如果您已经登录(因为您之前运行了
heroku login
),则可以发出以下命令:插入所需的名称,而不是
my-static-site
。如果没有使用该名称,则可以使用
git
部署站点。你现在可以访问你的网站在
https://<whatever-name-you-selected>.herokuapp.com/
或我的例子网站在这里https://my-static-site.herokuapp.com/
。如果需要,对您的站点进行以下3个命令的更改。
添加更改...
保存更改...
然后部署...
资源:How to Deploy a Static Site to Heroku
就这样了
"我希望这能帮上忙"
pgccezyw5#
到目前为止,我找到的最简单的解决方案是,使用
home.html
主页创建一个单行index.php
文件:<?php include_once('home.html'); ?>
我最近发现
home.html
应该用单引号而不是双引号括起来。最初我部署了一个使用include_once("home.html")
而不是include_once('home.html')
的版本,大约在Heroku消除其空闲层的同时,服务器开始抛出错误:PHP Fatal error: Uncaught Error: Undefined constant "“home" in /app/index.php:1
将
"home.html"
更改为'home.html'
解决了此问题。