2017-10-15 150 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. 只需要一个语言一切