2012-01-21 46 views
1

Play框架能夠部署包含自己的嵌入式數據庫和Web服務器的.war文件。Web框架可生成獨立加密的可分發Web應用程序?

我在尋找的是其他web框架,最好是java,它將web應用程序導出到單個jar或.war中,並帶有自己的嵌入式web服務器和數據庫,還有一些加密層使其難以反編譯。

後者不那麼值得關注,但更重要的是,在他們自己的服務器上爲多個用戶部署完整的Web應用程序,我想要一個無配置的可分發文件,他們可以簡單地在他們的盒子上下載並運行並忘記。

對我的場景來說,玩框架最合適嗎?

方案:用戶下載MyBlogCMS.jar,運行它自己的服務器上,並能夠使用該應用程序從http://23.194.14.111/myblogcms

這也將是不錯的東西像http://www.ioncube.com/但爲Java。

回答

1

Java框架需要安裝JVM,並且即使在'混淆'時,java字節碼也很容易進行反向工程,所以對於您試圖實現的目標來說,這可能是一個非常糟糕的選擇。

更好的語言將編譯爲本地代碼,如C/C++或Haskell。 Haskell有幾個很好的框架,比如Snap和Happstack。 Happstack包含一個持久性框架,可避免使用數據庫,但可以使用sqlite嵌入式數據庫。

一旦你有你的本地二進制文件,你將需要添加一個加密包裝它,並有幾個商業工具,這樣做。

+0

看起來不錯,但我不知道Haskell ...我會嘗試學習happstack,但有沒有任何開源加密包裝?是否有可能反編譯happstack – KJW

+0

可以用足夠的努力對任何東西進行逆向工程,但是由於抽象和優化,Haskell代碼會特別棘手。我首先下載'Haskell Platform',然後看'學習你一個Haskell'。之後嘗試Snap。一個加密的包裝只會添加一層表面的保護,因爲它必須在內存中解密。我不知道免費的二進制代碼混淆器或加密器,但它們可能存在。 – Andrew