摘要: 贴图太不方便,要查看图文版,请访问 有道云笔记分享链接 ============================================================================ 阿里云(ECS+RDS)部署PHP+MySQL网站初探 一、背景介绍 前段时间,用Apache+PHP+MySQL给自己的开发团队开发了一个“计划任务分配和反馈系统”,前端框架是Jquery+EasyUI。 贴图太不方便,要查看图文版,请访问 http://note.youdao.com/noteshare?id=3fb19ba1b69c27b2ccd218f5403db0ca&sub=D2826597DF2A4DCD997CDAAAD4B157D5 ============================================================================ 阿里云(ECS+RDS)部署PHP+MySQL网站初探 一、背景介绍 前段时间,用Apache+PHP+MySQL给自己的开发团队开发了一个“计划任务分配和反馈系统”,前端框架是Jquery+EasyUI。 起初系统部署在内网。但很快就发现,出差或在家办公的人无法使用。因此,大家决定在公有云上部署该系统。 刚好最近阿里云在做活动,推出了个人免费套餐,包含云服务器 ECS、负载均衡、云数据库 RDS、云数据库 Redis 版、弹性公网 IP、对象存储 OSS。因此,从来没有用过云环境的我们,决定先申请该套餐试用一下。 二、申请过程 1、打开 www.aliyun.com ; 2、可以新注册一个账号;也可以用自己的淘宝账号登录; 3、打开 “最新活动”,选择“阿里云35+产品6个月免费”; 4、申请成功后,会有短信提示。 5、申请的套餐主要配置如下: 1)ECS 2)RDS 三、建站软件准备 推介使用WAMP建站。WAMP将Apache+PHP+MySQL打包在一起,运行在Windows环境上,比较适合初学者使用。 特别提示:我们申请的ECS是Windows Server 2012 R2 数据中心版本,WAMP是最新的WAMPServer 64 BITS(X64) 3.0.6版本。该版本的WAMP需要Visual C++的运行环境,否则安装时就会出现“丢失MSVCR110.dll”的错误。 1、下载 WAMP:http://www.wampserver.com/en/#download-wrapper 2、下载Visual C++的运行环境:https://www.microsoft.com/zh-cn/download/details.aspx?id=53587 四、开始建站 1、登录阿里云 2、进入控制台 3、查看ECS的外网IP 4、接下来,就要进入ECS安装软件了 5、打开本地电脑的“远程桌面连接”,输入刚才看到的ECS外网IP,连接ECS 6、安装Visual C++的运行环境vc_redist.x64.exe 7、安装WAMP 8、启动WAMP 重点来了:在当前ECS的配置下,WAMP很可能启动失败。这是因为MySQL需要分配内存过高,启动不了。如何解决呢?有两种方案。 方案1:分配windows的虚拟内存。 打开ECS的控制面板,再打开“系统à调整系统外观和性能”,给系统加上虚拟内存,再启动WAMP,应该就OK 方案2:将MySQL移至RDS,这是最好的方案。具体步骤在后面描述。 五、调整外网访问权限 (一)调整WAMP的配置文件 1、打开C:\wamp\bin\apache\apache2.4.9\conf\ httpd.conf 2、修改文件 <Directory /> AllowOverride none Require all granted </Directory> 3、保存 4、重启WAMP (二)调整ECS的外网访问权限 1、打开控制台,选择 “网络和安全à安全组” 2、选择“配置规则” 3、选择“入方向à添加安全组规则” 4、填写规则项目 1)授权策略:允许 2)协议类型:全部 3)授权对象:0.0.0.0/0 5、保存 6、OK!现在应该能从外网访问网站页面了。 六、将MySQL移至RDS 将MySQL移至RDS,一方面可以减少ECS的负载,提高访问性能;另一方面,可以利用RDS对数据库的优化配置,提高数据处理效率,这应该是最好的方案。具体步骤如下: (一)删除ECS上的MySQL服务 1、点击WAMP的图标 2、选择 MySQLàServiceàRemove Service 3、OK!ECS上的MySQL服务已删除。 (二)在RDS上建立数据库 1、打开控制台 2、找到RDS实例,选择“管理” 3、选择“登录数据库” 如果是第一次登录数据库,控制台会提示你设置用户名和密码 4、输入用户名和密码登录 5、进入DMS数据操作界面,建立数据库、数据表,完成数据初始化操作。 (三)开通ECS访问RDS的网络权限 这里分两种情况:一是ECS与RDS在同一内网;二是ECS与RDS不在同一内网。 提示:判断ECS与RDS是不是在同一内网的方法,就是看ECS和RDS的实例在哪里。从控制台可以看出,我们的ECS在华北2区,RDS在华东2区,不在一个内网。 1、选择RDS实例,点击“管理” 2、选择”数据安全性” 3、点击”设置白名单” 4、点击”添加白名单分组” 如果ECS与RDS在同一内网,在”组内白名单”中加入ECS的内网地址; 如果ECS与RDS不在同一内网,在”组内白名单”中加入ECS的外网地址; 5、点击”添加白名单分组” 6、如果ECS与RDS不在同一内网,还要选择”数据库连接”,申请”外网地址”。 7、OK! (四)修改PHP的数据库连接 1、打开ECS上的PHP数据库连接文件 2、填写'MySQL数据库地址'、'MySQL数据库用户名'、'MySQL数据库密码' 注意:如果ECS与RDS在同一内网,在” MySQL数据库地址”中写入RDS的内网地址; 如果ECS与RDS在不同一内网,在” MySQL数据库地址”中写入RDS的外网地址; 3、保存文件 4、OK!ECS上的PHP文件应该能访问RDS上的MySQL数据库了 写到这里,我们基于云服务部署网站的工作就大功告成!至于进一步的安全设置、性能调优等工作,还要慢慢摸索。 原文链接