如何让这个多人Flash游戏公开可用?

我制作了ActionScript 3.0 Flash游戏,并使用SmartFoxServer实现了多人游戏function。 现在我想把这个游戏放在我的网站上,在000webhost上。

我的游戏在localhost上工作得很好。 但是我需要把我的smartfox实例放在公开的地方。 这是我需要你们帮助的地方。

有一篇文章解释了需要完成的工作 – http://docs2x.smartfoxserver.com/GettingStarted/installation

我不明白,我必须将我的游戏和我的smartfox实例放在远程服务器,vps,专用服务器还是什么?

对。 你需要得到一个VPS,或者至less一个Amazon EC2云实例来运行它。 我99.99%肯定你不能使用免费的包在000webhost这样做。 他们是一个纯粹的虚拟主机,你需要一个可以configuration和安装Java的地方,以及SmartFox服务器。

所以..去aws.amazon.com并注册一个免费的帐户。

您需要为他们提供信用卡/借记卡号码,但只要您保持在免费级资源限制范围内,他们就不会向您收费。

一旦你有一个帐户,去这里开始一个EC2实例。 互联网上有一大堆的AWS 101教程,如果你做一些Googlesearch。

这一切都假定你知道一些关于linux的知识,但是如果你使用Ubuntu Linux 12.04 64位服务器创build你的第一个实例,它会使一切变得容易一些!

当你点击创build一个实例时,你会得到这个select器: 在这里输入图像说明

select“经典向导”和 这个 AMI启动。

select 默认选项 对于这个例子..

而且 默认在下一页 太。

select默认的存储选项 在这里输入图像说明

然后命名它。 在这里输入图像说明

您现在需要创build一个SSH密钥,并将其命名。 当你点击“下载密钥对”时,浏览器将保存私钥。 保持这个安全,因为如果你失去它,你已经有效地失去了新的服务器的主密钥。 在这里输入图像说明

现在我们需要创build一个安全组。 这是Amazon EC2的防火墙。 创建一个安全组

为SSH,HTTP和HTTPS添join站规则。 现在已经足够了。

添加Rulez。

查看您所做的select。 审查它。

欢呼! 它现在应该启动.. 开机时间

有时间进入它。 这是控制面板。

控制面板

select你的新的服务器实例,并右键点击它,你会得到这个菜单。

然后点击连接

然后点击连接。

To access your instance: Open an SSH client. Locate your private key file (SmartFox.pem). The wizard automatically detects the key you used to launch the instance. Your key file must not be publicly viewable for SSH to work. Use this command if needed: chmod 400 SmartFox.pem Connect to your instance using its Public DNS. [ec2-xx-xx-xx-xx.compute-1.amazonaws.com]. Example Enter the following command line: ssh -i SmartFox.pem [email protected] 

这几乎是正确的,除了它是一个Ubuntu实例,你想要的

 ssh -i SmartFox.pem [email protected] 

那么,让我们来做。

 ubuntu@ip-10-243-117-245:~$ 

我们进来了,魔术!

需要下一个SmartFox安装程序 ..

用wget下载,然后tar xzvf并解压。

 cd ~ wget http://www.smartfoxserver.com/downloads/sfs2x/SFS2X_unix_2_0_1_64.tar.gz tar xzvf SFS2X_unix_2_0_1_64.tar.gz ls -lah total 98544 drwxr-xr-x 4 tom staff 136B 19 Feb 22:51 . drwxr-xr-x 79 tom staff 2.6K 19 Feb 22:41 .. -rw-r--r-- 1 tom staff 48M 21 May 2012 SFS2X_unix_2_0_1_64.tar.gz drwxr-xr-x 9 tom staff 306B 13 Feb 2012 SmartFoxServer2X ⚡ SmartFoxServer2X ls -lah total 160 drwxr-xr-x 9 tom staff 306B 13 Feb 2012 . drwxr-xr-x 4 tom staff 136B 19 Feb 22:51 .. drwxr-xr-x 15 tom staff 510B 13 Feb 2012 .install4j drwxr-xr-x 6 tom staff 204B 13 Feb 2012 Client -rwxr-xr-x 1 tom staff 71K 13 Feb 2012 LicenseAgreement.pdf -rwxr-xr-x 1 tom staff 5.7K 13 Feb 2012 RELEASE-NOTES.html drwxr-xr-x 13 tom staff 442B 13 Feb 2012 SFS2X drwxr-xr-x 8 tom staff 272B 13 Feb 2012 jre drwxr-xr-x 9 tom staff 306B 13 Feb 2012 third-party-licenses 

所以,你可以继续,现在开始该死的事情。

 ubuntu@ip-10-243-117-245:~/SmartFoxServer2X/SFS2X$ ./sfs2x-service start 

或完整的path,通过运行启动它

 /home/ubuntu/SmartFoxServer2X/SFS2X/sfs2x-service start 

并停止它:

 /home/ubuntu/SmartFoxServer2X/SFS2X/sfs2x-service stop 

您可以在该sfs2x服务上执行以下命令: {start|stop|status|restart|force-reload}

有趣的是,默认情况下它看起来像SmartFox,需要在AWS安全组防火墙上打开端口8080。

 ubuntu@ip-10-243-117-245:~/SmartFoxServer2X/SFS2X$ sudo netstat -anp |grep java tcp6 0 0 127.0.0.1:9933 :::* LISTEN 9142/java tcp6 0 0 :::8080 :::* LISTEN 9142/java udp6 0 0 127.0.0.1:9933 :::* 9142/java 

幸运的是,这很容易。

在控制面板的侧边栏上,有一个安全组链接。 在这里输入图像说明

编辑它,添加一个自定义的TCP规则,并允许端口8080到0.0.0.0/0

在这里输入图像说明

添加规则,并应用更改

您现在应该能够通过控制面板中的Amazon EC2为您提供的DNS名称联系您的SmartFox游戏服务器。 这跟你以前的SSH一样。

这就是所有人!