私はnode.jsから始めたばかりで、もちろんCSS、JS、および画像をロードする静的なindex.htmlファイルを提供しようとしています。fs.readFile と node-static の serveFile の両方を使用して、index.html ファイルを読み取ってみました。
どちらもファイルを提供しますが、含まれている CSS、JS、および画像を見つけることができません。私のパスが間違っているのかもしれませんが、これが私のディレクトリ構造です。
index.html ファイルからこれらの参照ファイルへの相対パスを使用しました。したがって、単純に css/main.css です。また、それらが server.js ファイルに相対的である必要がある場合に備えて、../css/main.css を実行しました。最後に、パスを絶対パスにする必要があり、index.html ディレクトリがルートだった場合は、/css/main.css. 何もロードされていません。
私は何を間違っていますか?
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(8080);
});
これにより、ファイルが正常に処理されます。
おっしゃる通り、まだまだ勉強中です。
ノード静的「API」はあまり完全ではないため、上記のルートに戻りました。
ありがとう。