2011-12-16 3 views
0

現在、私はExpressフレームワークを使用しているプロジェクトで作業しています。私は静的なjsとcssファイルを提供したいディレクトリ "/静的"を持っています。次のようにexpress.static()/ cssと/ jsファイルを提供しようとするとエラーが発生する

プロジェクトのディレクトリ構造は次のとおりです。

アプリの設定で
/ 
    visits.js 
    /static 
    /css 
     style.css 
    /js 
     jquery.flot.js 
    /views 

、私は次のように静的ファイルサーバを設定しています:

app.configure(function(){ 
    app.use(express.logger()); 
    app.use(express.static(__dirname + '/static')); 
    app.set('views', __dirname + '/views'); 
    app.set('view options', { layout : true }); 
    app.set('view engine', 'jade'); 
}); 

私は私の上でアプリケーションを実行すると、ローカルマシン、すべて素晴らしいです。マイネットワークコンソールには示しています

GET http://myserver.com/ [HTTP/1.1 200 OK 13ms] 
GET http://myserver.com/css/style.css [HTTP/1.1 200 OK 3ms] 
GET http://myserver.com/js/jquery.flot.js [HTTP/1.1 200 OK 4ms] 

をしかし、私は私のテストサーバーに同じアプリケーションを押し上げたときに、静的ファイルは(404エラー)を見つけていません。

GET http://myserver.com/visits/ [HTTP/1.1 200 OK 195ms] 
GET http://myserver.com/css/style.css [HTTP/1.1 404 Not Found 95ms] 
GET http://myserver.com/js/jquery.flot.js [HTTP/1.1 404 Not Found 93ms] 

唯一の違いその私ができます私のローカルマシン上にあるのだと思う、私は単純にアプリケーションにアクセス:

127.0.0.1:4000/ 

しかし、テストサーバー上で、私はnginxのサーバーの背後に座ってアプリを持っています。転送は、静的なファイルサーバは、CSSやJSファイルを検索するために使用しているパスに影響を与えている場合、私は思ったんだけど

myserver.com/visits/ 

:私はへの要求を転送proxy_passを使うのか?

どんなアイデアや助けも大歓迎です。

ありがとうございます!

答えて

0

さらに調査したところ、これはnginx設定でproxy_passを使用した場合の問題でした。最初のGETリクエストは私のExpressアプリケーションに正しく転送されていましたが、その後のcssまたはjsファイルの呼び出しは正しくルーティングされていませんでした。これは、Expressフレームワークの問題ではありません。探してくれてありがとう。

+0

私は同じ問題を抱えていますが、あなたのconfファイルはどのように見えますか? – user1441287

関連する問題