阿里云(ECS+RDS)部署PHP+MySQL网站初探

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
云数据库 RDS MySQL,高可用系列 2核4GB
简介: 贴图太不方便,要查看图文版,请访问 有道云笔记分享链接 ============================================================================   阿里云(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 数据库了
 
写到这里,我们基于云服务部署网站的工作就大功告成!至于进一步的安全设置、性能调优等工作,还要慢慢摸索。
如果你对本文有兴趣,或想与作者交流。请发邮件至 33205280@qq.com
期待认识更多朋友。
 
相关实践学习
借助OSS搭建在线教育视频课程分享网站
本教程介绍如何基于云服务器ECS和对象存储OSS,搭建一个在线教育视频课程分享网站。
7天玩转云服务器
云服务器ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,可降低 IT 成本,提升运维效率。本课程手把手带你了解ECS、掌握基本操作、动手实操快照管理、镜像管理等。了解产品详情:&nbsp;https://www.aliyun.com/product/ecs
相关文章
|
22天前
|
负载均衡 应用服务中间件 持续交付
微服务架构下的Web服务器部署
【8月更文第28天】随着互联网应用的不断发展,传统的单体应用架构逐渐显露出其局限性,特别是在可扩展性和维护性方面。为了解决这些问题,微服务架构应运而生。微服务架构通过将应用程序分解成一系列小型、独立的服务来提高系统的灵活性和可维护性。本文将探讨如何在微服务架构中有效部署和管理Web服务器实例,并提供一些实际的代码示例。
53 0
|
5天前
|
存储 SQL 关系型数据库
一篇文章搞懂MySQL的分库分表,从拆分场景、目标评估、拆分方案、不停机迁移、一致性补偿等方面详细阐述MySQL数据库的分库分表方案
MySQL如何进行分库分表、数据迁移?从相关概念、使用场景、拆分方式、分表字段选择、数据一致性校验等角度阐述MySQL数据库的分库分表方案。
一篇文章搞懂MySQL的分库分表,从拆分场景、目标评估、拆分方案、不停机迁移、一致性补偿等方面详细阐述MySQL数据库的分库分表方案
|
16天前
|
网络协议 网络安全
基于bind软件部署DNS服务器
关于如何使用bind软件部署DNS服务器的教程,包括DNS服务器的类型、基于bind软件的部署步骤、验证DNS服务器可用性的指导,以及如何进行DNS正向解析的实现。
17 2
基于bind软件部署DNS服务器
|
17天前
|
存储 关系型数据库 MySQL
使用Docker快速部署Mysql服务器
本文介绍了如何使用Docker快速部署MySQL服务器,包括下载官方MySQL镜像、启动容器、设置密码、连接MySQL服务器以及注意事项。
100 18
|
7天前
|
存储 数据挖掘 Linux
服务器数据恢复—Linux操作系统网站服务器数据恢复案例
服务器数据恢复环境: 一台linux操作系统服务器上跑了几十个网站,服务器上只有一块SATA硬盘。 服务器故障: 服务器突然宕机,尝试再次启动失败。将硬盘拆下检测,发现存在坏扇区
|
23天前
|
JavaScript NoSQL 中间件
《Node.js后端修炼手册》——揭秘服务器搭建与部署上线的生死时速,让你一战成名!
【8月更文挑战第27天】本文详细介绍如何从零开始利用Node.js构建后端服务器并部署至生产环境。首先,通过简易步骤搭建基础服务器,包括环境安装与配置。接着,引入Express框架优化路由与中间件管理,提升开发效率。随后,利用Mongoose实现MongoDB数据库连接,增强数据交互能力。为保证系统稳定性,文中还讲解了错误处理机制。最后,通过PM2等工具部署应用至生产环境,确保高效运行。本教程辅以示例代码,帮助读者快速掌握Node.js后端开发全流程。
52 2
|
25天前
|
前端开发 应用服务中间件 nginx
前端服务器部署方式
【8月更文挑战第25天】前端服务器部署方式
29 1
|
19天前
|
UED
JSF文件下载:解锁终极文件传输秘籍,让你的Web应用瞬间高大上!
【8月更文挑战第31天】掌握JSF文件下载功能对构建全面的Web应用至关重要。本文通过具体代码示例,详细介绍如何在JSF中实现文件下载。关键在于后端Bean中的文件读取与响应设置。示例展示了从创建实体类到使用`&lt;h:commandLink&gt;`触发下载的全过程,并通过正确设置响应头和处理文件流,确保文件能被顺利下载。这将显著提升Web应用的实用性与用户体验。
33 0
|
19天前
|
Java 数据库 API
JSF与JPA的史诗级联盟:如何编织数据持久化的华丽织锦,重塑Web应用的荣耀
【8月更文挑战第31天】JavaServer Faces (JSF) 和 Java Persistence API (JPA) 分别是构建Java Web应用的用户界面组件框架和持久化标准。结合使用JSF与JPA,能够打造强大的数据驱动Web应用。首先,通过定义实体类(如`User`)和配置`persistence.xml`来设置JPA环境。然后,在JSF中利用Managed Bean(如`UserBean`)管理业务逻辑,通过`EntityManager`执行数据持久化操作。
29 0
|
19天前
|
JavaScript 搜索推荐 前端开发
从零搭建到部署:Angular与Angular Universal手把手教你实现服务器端渲染(SSR),全面解析及实战指南助你提升Web应用性能与SEO优化效果
【8月更文挑战第31天】服务器端渲染(SSR)是现代Web开发的关键技术,能显著提升SEO效果及首屏加载速度,改善用户体验。Angular Universal作为官方SSR解决方案,允许在服务器端生成静态HTML文件。本文通过具体示例详细介绍如何使用Angular Universal实现SSR,并分享最佳实践。首先需安装Node.js和npm。
20 0

热门文章

最新文章