2016-07-25 10 views
-1

クライアントサイドから画像またはCSSのパスが問題になりました。画像とCSSはindex.htmlと同じフォルダにありますが、インデックスには表示されません。Nodejsでパスが壊れた

マイフォルダ構造:

  • index.htmlを
  • image.jpegのindex.htmlで
  • のmain.css
  • server.js

を私はのパスを尋ねますイメージとCSSは:

<img src="/image.jpeg"> 
<link rel="stylesheet" type="text/css" href="/main.css"> 
server.jsで

私はインデックスのパスを尋ねる:

var app = require('express')(); 
app.get('/',function(req,res){ 
    res.sendFile(__dirname + '/index.html'); 
}); 
+1

可能な重複([Node.jsの持つ基本的なWebサーバとhtmlファイルや資産を提供するために表現] http://stackoverflow.com/questions/9443840/basic- – alexi2

+0

あなたのサーバはあなたにindex.htmlを提供しますが、必要な他のファイルのためのルートは作成していません。あなたはそれらのためのルートが必要です。他のWebサーバーとは異なり、node.jsはデフォルトですべてのファイルを提供しません。あなたは 'express.static()'を使って助けてもらえますが、他のパブリックファイルを別のディレクトリに置いて、他のパブリックディレクトリで 'express.static()'を指すようにして、server.jsを公開しないようにしてください。 – jfriend00

答えて

-1

あなたの問題は、あなたが静的なファイルを提供する方法がないということです。

app.use(express.static(__dirname + '/public')); 

そして、あなたのファイルを格納するための公開 'ディレクトリを使用します。

はこれを含めます。

ここに掲載されている質問に似ていて、さらに明確になる質問があります。 Basic webserver with node.js and express for serving html file and assets

+1

このリンクは質問に答えるかもしれませんが、答えの本質的な部分をここに含めて参考にしてください。リンクされたページが変更された場合、リンクのみの回答は無効になります。 - [レビューの投稿](レビュー/低品質の投稿/ 13112039) – Everettss

+0

これはより適していますか? – alexi2

+0

あなたは今安全でなければなりません。 – Everettss

関連する問題