Amazon的EC2虚拟主机确实挺好用的,注册之后有一年的试用期,参考了下面这个教程来注册:
http://www.freehao123.com/amazon-ec2-vps/
注册的过程比较简单,这里不多说,记得注册之后要把那个私钥保存下来,保存好之后就可以用XShell来连接自己的虚拟主机了。连接的时候可以使用public DNS,因为public IP会经常变,但域名是不会变的。用XShell连接的时候,因为我在EC2上面创建的是Ubuntu的系统,所以名称就用ubuntu,密钥选择之前保存的.pem文件。
连接上了Ubuntu之后可以用sudo su命令获取root权限,不需要密码。这时候可以创建文件夹或者下载JDK和tomcat进行java开发环境的配置,配置好了以后就可以运行tomcat了。访问网站可以使用public DNS+8080端口号+web服务名来访问。
在配置好java和tomcat之后自然是需要把我们在本机开发好的web内容上传到服务器上,这时候就稍微有点儿麻烦了。我是在window7下面开发好的,为了通过win7向linux服务器上传文件,我需要先下载Putty,打开puttygen.exe,把之前保存的.pem密钥转换为Putty的密钥,也就是以.ppk结尾的密钥。然后再下载WinSCP,配置WinSCP使用putty的密钥来连接linux,连接之后它会询问使用哪个用户名,试了root、ec2-user、自己注册的Amazon用户名和ubuntu之后发现,只有ubuntu这个关键字可以连接上,我不太清楚是什么原因,也许EC2上面的instance就是用的这个用户名吧。WinSCP连接上之后就可以看到如下的界面:
这个就和普通的ftp软件差不多,左边是本机文件,右边是linux虚拟主机的目录,可以看到当前目录是/home/ubuntu,左边的文件可以拖拽到ubuntu目录下的任何地方,但是不能放到ubuntu文件夹外面,比如/ust/softwares目录,会提示没有权限,这个应该是有办法解决的,但是目前还没处理。我的做法就是先上传到ubuntu目录下的任意一个位置,比如可以建一个文件夹存起来,然后在XShell下用mv命令把这个文件夹剪切到别的位置。