这是我第一次使用node.js. 我得到它来显示index.html,但它不显示网站上的图像或其他任何东西,它只显示基本的HTML内容.这是我如何设置它.服务器上没有apache,php或其他任何东西,只有ubuntu,proftp和node(以及curl和其他依赖项).我为节点文件/ var/nodeFiles创建了主目录,而html/site文件的目录是/ var/nodeFiles/www所以对于我的节点服务器文件,我这样做:
var http = require('http'),
fs = require('fs');
fs.readFile('/var/nodeFiles/www/index.html', function (err, html) {
if (err) {
throw err;
}
http.createServer(function(request, response) {
response.writeHeader(200, {"Content-Type": "text/html"});
response.write(html);
response.end();
}).listen(80);
});
Run Code Online (Sandbox Code Playgroud)
这是有效的,但它只显示index.html文件和NOTHING附加到它,因此没有图像,没有效果或html文件应显示的任何内容.文件和目录都是正确的,我已经双重检查,文件夹的权限是正确的.那么我还需要做些什么来让节点显示网站的其余部分?我希望我已经正确地解释了自己,我被告知这是一个提出发展问题的地方.感谢您抽出时间来阅读.
Hec*_*rea 22
但它只显示index.html文件和NOTHING附加到它,因此没有图像,没有效果或html文件应显示的任何内容.
那是因为在你的程序中,无论请求是什么样的,你都会返回浏览器.
您可以在这里查看更完整的示例,该示例将返回最常见网页(HTML,JPG,CSS,JS)的正确文件https://gist.github.com/hectorcorrea/2573391
另外,看一下我写的关于如何开始使用node的博客文章.我想这可能会为你澄清一些事情:http://hectorcorrea.com/blog/introduction-to-node-js
检查此基本代码以设置html服务器.它为我工作.
var http = require('http'),
fs = require('fs');
fs.readFile('./index.html', function (err, html) {
if (err) {
throw err;
}
http.createServer(function(request, response) {
response.writeHeader(200, {"Content-Type": "text/html"});
response.write(html);
response.end();
}).listen(8000);
});
这对我有用:
var express = require('express'),
app = express();
app.use('/', express.static(__dirname + '/'));
app.listen(8080);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
125451 次 |
| 最近记录: |