2017-02-21 5 views
1

私は(ログインテンプレートを使用しようとしているから取ったカントロードcssファイル

-css 
| 
-- style.css 
- js 
| 
-- index.js 
| 
index.html 

index.htmlファイルの先頭になります。

<head> 
    <meta charset="UTF-8"> 
    <title>Sign-Up/Login Form</title> 
    <link href='http://fonts.googleapis.com/css?family=Titillium+Web:400,300,600' rel='stylesheet' type='text/css'> 
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/normalize/5.0.0/normalize.min.css"> 


     <link rel="stylesheet" href="css/style.css"> 


</head> 

と本体が含まのscrips含ま:

<script src='http://cdnjs.cloudflare.com/ajax/libs/jquery/2.1.3/jquery.min.js'></script> 

    <script src="js/index.js"></script> 
0をの

私のNode.jsはなります Can not get CSS file

そして:

GET http://127.0.0.1:3001/css/style.css 

私が解決策を探すためにしようとしている:

// Import Required Module 
var express = require('express') 
var app = express() 
var bodyParser = require('body-parser') 


// css 
var path = require('path') 
app.use(express.static(path.join(__dirname, 'public'))); 

// Create instances 
app.use(bodyParser.json()); 
app.use(bodyParser.urlencoded({  
    extended: true 
})); 

// Get 
app.get('/', function (req, res) { 
    console.log('Get: /'); 
    res.sendFile('LoginTemplate/index.html', {root: __dirname }) 
}) 

/* 
app.get('css/style.css', function (req, res) { 
    console.log('Get: css/style.css'); 
    res.sendFile('css/style.css', {root: __dirname }) 
}) 
*/ 


// Listner 
app.listen(3001, function() { 
    console.log('Example app listening on port 3001!') 
}) 

は、私はエラーを取得していますhtmlファイルをロードする場合パブリックフォルダを作成し、内部にcssフォルダをコピーしますが、まだ動作しません。

jsファイル&をロードするにはどうすればよいですか?

+0

rootにディレクトリpublicを作成し、そこにディレクトリcssを置く必要があります –

答えて

0
// Import Required Module 
var express = require('express') 
var app = express() 
var bodyParser = require('body-parser') 

// Create instances 
app.use(bodyParser.json()); 
app.use(bodyParser.urlencoded({  
    extended: true 
})); 

// Get 
app.get('/', function (req, res) { 
    console.log('Get: /'); 
    res.sendFile('LoginTemplate/index.html', {root: __dirname }) 
}) 


app.get('/css/style.css', function (req, res) { 
    console.log('Get: css/style.css'); 
    res.sendFile('LoginTemplate/css/style.css', {root: __dirname }) 
}) 

app.get('/js/index.js', function (req, res) { 
    console.log('Get: js/index.js'); 
    res.sendFile('LoginTemplate/js/index.js', {root: __dirname }) 
}) 


// Listner 
app.listen(3001, function() { 
    console.log('Example app listening on port 3001!') 
}) 
0

すべてのコードとフォルダの設定がうまくいくように見えます。投稿しているURL(http://127.0.0.1:3001/css/style.css)から、私はあなたのサーバーインスタンスにエラーがあると推測しています。定義ファイルをチェックし、サーバがcss/style.cssを読む権限を持っていることを確認してください。

ファイルとフォルダに適切な権限がない場合、この問題が発生しました。これを簡単に確認するには、sudo chmod -R 0777 [path_to_your_project](LinuxとMacのシステムでこのコマンドを使用します)のようなものを実行してください。このコマンドは、すべてのユーザーとゲストにフルアクセスしてファイルの読み取り、書き込み、および実行を許可し、問題がユーザー権限であるかどうかを簡単に確認する方法です。

Webサーバーが正しく構成されていない場合も、この同じ問題が発生します。そのような場合、私は間違いなくルートフォルダ(例:/ var/www)内のすべてのファイルをWebサーバーに共有することを許可しましたが、サブフォルダは共有しませんでしたので、/ var/www/imagesフォルダはWebサーバーによって解析され、保護されている領域とみなされます。この場合、Webサーバーはアクセス権を持ちますが、構成ルールに基づいてファイルを提供することを拒否します。

この2つの修正プログラムのいずれかを使用すると、正しいパスをソリューションに導くのに役立ちます。

幸運を祈る!