2017-10-15 176 views
0

我可以只用JavaScript寫我的網站嗎?確定我的代碼對任何人都是隱瞞的?在這方面,像Apache這樣的Node.js可以通過互聯網提供商訪問嗎?我可以用JavaScript代替PHP,用Node.js代替Apache嗎?

+0

你讀過關於NodeJS的工作原理嗎? –

+0

我讀了一些在這裏和那裏。唉。你看,他們說JS可以用作服務器端語言。和PHP一樣。不過,使用PHP,我不需要在我的電腦上安裝Apache。我需要的只是在網絡主機上上傳我的代碼。請注意,這樣做我確實需要成爲Apacher的專家。 –

回答

1

的答案,您的兩個問題是

Node.js 可以完全取代Apache(假設您願意將所有PHP重新編寫爲JavaScript)。如果你的Apache在你的服務器和客戶端之間以反向代理模式運行,你甚至可以在Node.JS中處理一些請求,而在PHP中處理其他請求。這將允許您在更改代碼的同時保持原始功能,並且還允許PHP處理更多的常規任務。

雖然你不能防止通過混淆的任何手段來讀取原始的JavaScript,你可以防止人通過音符利用標準的JavaScript在所有閱讀你的代碼。您可以使用NativeExtension爲節點添加一個擴展處理程序加密的JavaScript文件:

require.extensions[".jse"] = function (m) { 
m.exports = MyNativeExtension.decrypt(fs.readFileSync(m.filename)); 
}; 

require("YourCode.jse"); 

這將JavaScript代碼轉換爲.jse,你會再包進行生產。考慮到加密是在本地擴展內完成的,加密密鑰不會被泄露。

希望這會有所幫助! :)

+0

互聯網提供商不會自動*安裝它。 **大多數**提供商只提供Apache或NGINX。但是,提供Node.JS託管(包括亞馬遜)的[**大量站點**](http://www.hostingadvice.com/blog/where-to-find-free-node-js-hosting/) AWS)。你只需要選擇一個提供它的主機。如果你打算在其中進行任何開發,你幾乎肯定會在你的機器上需要它的一個副本。 –

+0

沒問題!一旦你確認你的問題已經解決,請不要忘記點擊下面的灰色檢查來將它標記爲已接受**(https://stackoverflow.com/help/someone-answers)投票按鈕 - 這會將其從「未答覆的問題」隊列中移除,併爲問題提問者和問題答疑者授予聲譽。詢問任何問題後,您可以在15分鐘內完成。當然,在這樣說的時候,你沒有義務將答案標記爲正確,雖然標記爲已解決的問題有助於使事情順利進行:) –

3

是的,你一定可以。然而,它可能需要一段時間才能轉換現有的代碼,如果這是一個公司機構,則必須詢問你的同事和你的老闆/主管。祝你好運,並記住,永遠記下你的代碼 JavaScript(無類型)所有語言。

  1. 的NodeJS的速度要快得多:http://www.hostingadvice.com/blog/comparing-node-js-vs-php-performance/
  2. 還有更多的圖書館:http://npmjs.org
  3. 只需要一個語言一切