次のファイルシステム構造があるとします。
/app/ Main application folder
/app.js Server JS file ran by node.js
/public Folder containing files for public website (port 80)
/index.html
/js/
/game.js
/admin/ Folder containing files used by local network system (port X)
/index.html
/js/
/screen.js
/share/ Folder containing files to be used by public website OR lan
/js/
/jquery.js
最終結果は次のadmin/index.html
ようになります。
<script type="text/javascript" src="/js/jquery.js"></script>
<script type="text/javascript" src="/js/screen.js"></script>
つまり、異なる場所から 2 つのファイルを読み込んでいます。ここでの考え方は基本的に「ファイルが入っているか確認し/share
、入っていなければポートに合わせてフォルダから読み込んでみる」です。
そして、これが私が使用している現在のコードです:
var connect = require('connect'),
sourcePublic = connect().use(
connect.static(__dirname + '/public', { maxAge: 86400000 })
),
sourceAdmin = connect().use(
connect.static(__dirname + '/admin', { maxAge: 86400000 })
),
sourceShare = connect().use(
connect.static(__dirname + '/share', { maxAge: 86400000 })
),
serverPublic = http.createServer(sourcePublic).listen(80),
serverAdmin = http.createServer(sourceAdmin).listen(90);
// ok, how do I use sourceShare?
PS:このシステムは、http://host/
(おそらくドメインまたは静的 IP) を介して世界中からアクセス可能であり、ローカル ネットワークを介して を介してアクセス可能である必要がありますhttp://host:90/
。
ポート 90 のものはシステムに損傷を与えることはありませんが (単なる出力画面です)、人々が外部からアクセスできないようにしたいと思います (ルーターとサーバー間でポート 90 転送がないことを確認することで簡単に実行できます)。 )。