0

我会尽量保持简单。我下载了引导模板。它有contact.php 文件和一堆html 文件。我使用部署在 heroku 上的 node.js 应用程序。当我去联系项目时会出现问题:它建议我保存该 php 文件而不是在浏览器中打开它。我的 web.js 文件目前如下:

var express = require('express');
var path  = require('path');
var app = express();
var fs = require('fs');
var htmlFile = './modern-business/index.html'

// Log requests
app.use(express.logger());

//Serve static files
app.use(express.static(path.join(__dirname, 'modern-business')));

app.get('/', function(request, response) {
  //response.send('Hello, there.');
    var html = fs.readFileSync(htmlFile).toString();
    response.send(html);   
});

var port = process.env.PORT || 8080;
app.listen(port, function() {
  console.log("Listening on " + port);
});

我怎样才能解决这个问题?基本上我想要与原始模板相同的功能。

PS我会接受解决问题的答案。

4

1 回答 1

0

您已经在 Heroku 的 NodeJS 容器中部署了 NodeJS 应用程序。这意味着没有 PHP 解释器,这就是服务器将文件发送到浏览器进行下载的原因,因为它不知道如何处理 PHP 文件。所以你有2个选择:

  1. 重写您的联系表单并使其提交给 NodeJS 应用程序并从 NodeJS 应用程序处理提交(电子邮件、数据库等)
  2. 将您的联系表单托管在 heroku 或任何其他站点上的另一个 PHP 容器上并链接到该容器
于 2013-11-14T08:53:12.457 回答