====== 使用免费的Amazon AWS EC2做google app engine反向代理 ====== Amazon提供网络服务称作AWS,Amazon Web Services。AWS包括很多网络服务。 EC2是AWS的云服务器,全称为Amazon Elastic Compute Cloud (Amazon EC2)。 AWS EC2和GAE类似,提供可扩展的主机服务,下面是AWS EC2的官方介绍: Amazon Elastic Compute Cloud (Amazon EC2) is a web service that provides resizable compute capacity in the cloud. It is designed to make web-scale computing easier for developers. ===== AWS EC2目前提供一年免费试用服务 ===== 免费试用的EC2配置为: * 750 hours of EC2 running Linux/Unix Micro instance usage * 750 hours of Elastic Load Balancing plus 15 GB data processing * 10 GB of Amazon Elastic Block Storage (EBS) plus 1 million IOs, 1 GB snapshot storage, 10,000 snapshot Get Requests and 1,000 snapshot Put Requests * 15 GB of bandwidth out aggregated across all AWS services * 1 GB of Regional Data Transfer ===== AWS EC2 GAE反向代理设置 ===== 下面说一下大概的GAE反向代理设置 1:首先需要有一个amazon 的帐号,然后在http://aws.amazon.com/申请amazon aws帐号,申请绑定自己的信用卡(amazon 会从你的信用卡中扣取1美元,这只是预授权,只要在使用中不超出免费配额就不会真正扣钱的),注册过程中还需要验证真实电话,输入你的电话然后他会打过来一个,接通后输入验证码即可。 2:需要登录https://console.aws.amazon.com/s3/home 创建一个bucket,这个貌似是用来保存日志文件的。我也不大懂。只知道他跟google storage差不多。然后就可以进入https://console.aws.amazon.com/ec2/home 创建你的实例了。一个实例也就相当于一个vps。在此之前你需要选择好region,即机房的所在地。建议选择西海岸的加州机房。点击‘Launch Instance’, * 第一步选择系统镜像,此处建议选 Basic 64-bit Amazon Linux AMI 2011.02.1 Beta 。因为他只需要8g的硬盘,不会超过免费配额。选择别的就要扣你钱了。 * 第二步选择系统配置,这里当然是选最免费的啦/。请注意。默认选中的不是免费的哦。 * 第三步貌似没什么特别的直接下一步 * 第四步是创建密匙,这个密匙一定要保存好了。登录ssh要用。翻墙什么的也靠它了。 * 第五步是要创建防火墙规则。默认只开22端口的。自己要动手吧http(80)端口加上去。 * 然后就OK了。 3:创建完ec2实例之后还可以申请一个免费的动态独立ip。然后记得把ip绑定到你的ec2实例实例上。 4:现在可以用putty登录你的ec2安装nginx。 * 一,到这里http://www.putty.org/ 下载putty(ssh登录工具)和puttygen(密匙转换工具),用打开puttygen点击里面的 load按钮加载你之前在ec2上创建的密匙文件,然后点击‘save private key’保存,接下来用putty登录需要用到这个密匙. * 二,打开putty,’host name’填写之前申请的独立ip。port使用默认的22。然后找到Connection->SSH->Auth选项,导入之前用puttygen 生成的密匙文件。 * 三,接下来点击‘OPEN’进行登录。用户名使用’ec2-user’。,然后在命令行使用 sudo su 能转换到root权限。 * 四,使用 yum install nginx 命令就能完成 nginx 的安装。 * 五,使用 cd /etc/nginx 命令跳到nginx配置文件的文件夹。 * 六,使用 vi nginx.conf 命令打开并修改配置文件。 如下配置放到http下 server { listen 80; server_name www.freedodo.com; location / { proxy_redirect off; proxy_pass http://ghs.google.com; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } } * 七,配置保存后用 nginx命令即启动反向代理。 5:修改域名的DNS配置,将A记录的@指向之前申请的独立ip即完成了所有的反向代理设置工作. ===== 参考 ===== * http://aws.amazon.com/ec2/