2012-07-18 125 views
1

所以我開始研究node-mysql,因爲我的整個站點都是用PHP構建的,但我想用node/socket.io來實現平滑的異步用戶端更新。然而,有一個問題,我看到與node-mysql,我還沒有得到答案。 mysql服務器的登錄信息如何不公開信息?nodejs/socket.io與node-mysql |安全混淆

根據您連接到數據庫,像這樣

var mysql  = require('mysql'); 
var connection = mysql.createConnection({ 
    host  : 'localhost', 
    user  : 'me', 
    password : 'secret', 
}); 

connection.connect(); 

connection.query('SELECT 1', function(err, rows, fields) { 
    if (err) throw err; 

    console.log('Query result: ', rows); 
}); 

connection.end(); 

那麼是什麼阻止從剛plopping服務器文件到他們的導航欄和瀏覽爲MySQL服務器的登錄信息的用戶的文檔https://github.com/felixge/node-mysql?我對此感到非常困惑,有人可以向我解釋嗎?

回答

6

Node.js是服務器端JavaScript。您可以將這些文件放置在您放置PHP文件的類似位置,而不是放置在公共可訪問的位置。

您運行您的Node應用程序,它提供您想要的公共HTML/CSS/JS文件(或者,以JSON形式的序列化數據)。

+0

要添加到本筆記中,在ASP/PHP中,URL *對應於文件系統路徑,在node.js中,「URL路徑層次結構」完全取決於您 - 沒有任何理由說明爲什麼服務器端代碼/配置應該在路徑層次結構中。 * =但並非總是如此 – 2014-11-02 17:40:42

1

您的node.js文件不應該通過瀏覽器訪問。