从0到1搭建自己的互联网领地

项目简介

通过使用腾讯云多种产品(CVM、CDN、CDB、COS、SSL证书)并配合使用知名 CMS 系统 WordPress,从无到有打造一个自己在互联网空间中的自留地。

项目架构


CDN(内容分发网络)、COS(对象存储)、CDB(云数据库)、SSL证书为非必选功能,下文演示环境中将分别讲解完整拓扑模式的配置以及最基础模式的配置(仅云服务器)。

战前准备

  1. 拥有一个已经在腾讯云备案成功的域名。
  2. 开通一台 CVM 机器,并且将IP、账号、密码记录在一个文档中。

战斗开始

教程所使用的机器为腾讯云公共镜像中的 CentOS 7.2 64位 版本镜像,并且购买了云硬盘来单独存储业务网站程序,搭建生产环境则使用了 OneinStack 的一键 LNMP(Linux + Nginx+ MySQL+ PHP) 工具。

1.首先登录我们的云服务器,更新并添加依赖以及开发者工具
yum -y update && yum -y groupinstall "Development Tools"

2.挂载并使用云硬盘作为数据盘使用
wget https://soft.vtrois.com/scripts/auto_fdisk.sh
chmod +x auto_fdisk.sh
./auto_fdisk.sh

注意:Step 3 中需要填入需要自动挂载的云硬盘,Step 5 中需要填入需要挂载的位置,因为 OneinStack 默认的数据位置为 /data 所以这里填入 /data 等待脚本执行完毕即可。

3.下载并使用 OneinStack 的一键 LNMP 工具搭建生产服务器
yum -y install wget screen curl python
wget http://mirrors.linuxeye.com/oneinstack-full.tar.gz
tar xzf oneinstack-full.tar.gz
cd oneinstack
screen -S oneinstack
./install.sh


说明:为了安全起见第一步中我把SSH默认的 22 端口修改为 53185 ,第二步中我选择只安装 Nginx 服务(这里选择的是 OpenResty 的编译版本),第三步中选择安装数据库版本(我这里选择的 MySQL5.6 的稳定版本,如果使用云数据库则不用选择安装数据库服务),第四步中选择安装 PHP 的版本(这里我选择的是最新的7.1版本),大家可以选择 WinSCP 工具来代替 FTP 工具,配置结束之后会有一个重启服务器的选项。

4.新建并配置虚拟机


说明:使用 ./vhost.sh 命令运行新建虚拟机脚本,第一步选择是否启用 SSL 协议(如果不需要则输入 n),第二步填入已经备案好的域名,第三步选择是否强制跳转 https (如果第一步输入了 n 则此时不会出现这一步),第四步开启 wordpress 伪静态功能,等待配置完成即可。

5.新建数据库(如果使用云数据库将不用进行此步)

使用搭建 LNMP 环境时选择安装 phpMyAdmin 工具的 root 账号登录,登录地址为外网IP/phpMyAdmin(例子:123.206.66.153/phpMyAdmin),新建一个名为 blog 的数据库,然后再新建一个普通用户 vtrois 并且把 blog 库的权限赋给他,这里也可以使用 SQL 命令操作(这一部也是为了让你的数据能更安全,当然最安全的方案还是使用站库分离的方法以及读写分离的方法,站库分离将使用到云数据库)。

GRANT ALL PRIVILEGES ON `blog`.* TO ‘vtrois‘@‘%‘ WITH GRANT OPTION;

6.配置并导入使用SSL证书(非必须)


在控制台的云产品分类中找到 SSL证书管理 ,点击申请证书即可申请一张免费一年的 TrustAsia DV SSL CA - G5 证书,身份验证选择自助DNS验证,根据给出的提示绑定 CNAME 记录并等待后台自动验证,申请成功会得到一套证书文件,这里我们选择 nginx 环境使用的证书,并且把得到的证书改名为 域名.crt 和 域名.key 的格式,例如:(qcloud.vtrois.com.crt 和 qcloud.vtrois.com.key),然后再将改名后的证书上传到服务器 /usr/local/openresty/nginx/conf/ssl 中并替换原有文件,最后在终端执行重启 Nginx 服务命令即可。

service nginx restart
7.配置使用云数据库(非必须)

云数据库会免费为大家提供一个从库,从而达到主从同步的不间断服务,并且支持 3 天内任意时间段的回档以及 5 天内的冷备数据下载,高配版还可以开通只读实例从而实现读写分离,简直是亲民的良心产品,省去了不少维护时间。同样在购买数据库实例之后初始化创建默认 root 账号的密码,进入控制台建议大家跟自建数据库一样新建一个普通账号来管理单独的数据库文件(这个过程在云数据库控制台都可以按照产品说明文档完成)。


注意:云服务器要和云数据库选到同一个地域同一可用区下,否则数据是不能互通的哦,但是目前广州一区与广州二区是可以互通的。

8.下载并安装 WordPress 程序
cd /data/wwwroot/qcloud.vtrois.com
wget http://wordpress.org/latest.tar.gz
tar xzvf latest*
cd wordpress*
sudo rsync -avz . /data/wwwroot/qcloud.vtrois.com
cd ..
rm -rf latest.tar.gz
rm -rf wordpress
sudo chown -R www /data/wwwroot
sudo chgrp -R www /data/wwwroot

在浏览器中打开站点 qcloud.vtrois.com 即可进入 WordPress 安装界面,第一步配置数据库信息,其中 Database Host(数据库主机) 为数据库地址,如果使用本地自建数据库则使用默认 localhost 即可,如果使用云数据库则填写数据库的内网ip点击提交即可。

在下一步中将配置站点信息,密码建议使用自动生成的密码,然后点击安装即可。

说明:第一个 cd 命令进入新建的域名目录(这里我用的是 qcloud.vtrois.com), chown 和 chgrp 命令为修改文件或目录所属的用户和组。

9.开启 CDN 内容分发功能(非必须)

由于我们的站点搭建在一台服务器上,他的物理位置是固定的,比如我选购的是北京机房的机器,然而用户在南方深圳访问,那么在这个访问过程中就会有一定的延迟,这时我们就可以选择使用 CDN 服务来优化这个过程,同时也可以使用 CDN 服务来抵抗源站被 DDoS 从而造成的网络瘫痪和服务不可用的问题。

说明:缓存配置可参考上图的配置设置,关于强力抵抗 DDoS 可以参考下图的配置设置(阀值的设置可以根据正常访问量调整),如果开启了 SSL 则需要在证书管理中添加证书并绑定到域名。

10.正确合理配置安全组,不给黑客留机会

说明:根据我们之前配置的 SSH 端口 53185,以及 Nginx 的 80 和 443 端口来配置安全组,同时我们在搭建 LNMP 环境时,系统默认新建了测试页面(在 /data/wwwroot/default 中的 index.html、ocp.php、phpinfo.php、tz.php)我们需要删除掉,如果需要使用 phpMyAdmin 切记不要删除 default 中的 phpMyAdmin 文件夹。

本文转载自腾云阁,已获得作者授权。

时间: 2024-10-12 22:19:39

从0到1搭建自己的互联网领地的相关文章

【腾讯云的1001种玩法】从0到1搭建自己的互联网领地

版权声明:本文由宋秉金 原创文章,转载请注明出处: 文章原文链接:https://www.qcloud.com/community/article/317889001488165500 来源:腾云阁 https://www.qcloud.com/community 项目简介 通过使用腾讯云多种产品(CVM.CDN.CDB.COS.SSL证书)并配合使用知名 CMS 系统 WordPress,从无到有打造一个自己在互联网空间中的自留地. 项目架构 CDN(内容分发网络).COS(对象存储).CDB

电气设备与新能源行业季度报告:光伏、风电、特高压业绩较好 关注工业4.0、电改和能源互联网

电气设备和新能源板块2014年收入增速回升,2015年一季度收入增长而利润略有下降.我们在电力设备和新能源板块共选取了146家上市公司(计算收入和净利润时剔除了WST海润,下同)进行了统计分析,全行业2014年实现收入4991.2亿元,同比增长7.763,实现净利润188.7亿元,同比增长71.103. 全行业毛利率为21.631,同比增长0.73个百分点,经营活动现金流为净流出256.7亿元.全行业15年一季度实现收入约998.9亿元,同比增长4.206,实现净利润31.6亿元,同比下降4.3

Nukkit插件从0开始:搭建环境

系列作者:粉鞋大妈 文章出处:http://www.cnblogs.com/xtypr 欢迎转载.翻译,也请保留这段声明,不胜感激. Nukkit插件从0开始:搭建环境 上一篇:没了 目录:Nukkit插件从0开始 下一篇:还没写 考虑到许多读者是第一次接触Java编程,或者把Nukkit插件作为自己的第一个Java应用,我将以图文详细讲解所有步骤,若有不好见谅. 安装Java 8 由于Nukkit使用Java 8的新特性来优化性能和代码可读性,你必须安装jdk 8来开发Nukkit插件. 打开

max环境下cocos2d-x 3.0的环境搭建

一开始始终找不到网上说得create_project.py,所以网上通过这个的方法行不通. 所以就找了点关于3.0的资料,貌似在3.0正式版里是通过**/cocos2d-x-3.0/tools/cocos2d-console/bin/cocos.py来创建工程的. 不过3.0正式版要先搞定环境变量.. 1. 打开 ~/.bash_profile ,添加以下信息(具体为什么叫这些没搞明白,回头可以试试不叫这些名字) export COCOS2DX_ROOT=/Users/*/Sites/cocos

Ubuntu14.04下Hadoop2.2.0集群搭建

系统版本: master: Ubuntu 14.04  salve1: Ubuntu 14.04 hadoop: hadoop 2.2.0 1.系统配置以及安装SSH无密码登陆环境(master&slaves): 修改本机(master)和子节点(slaveN)机器名:打开/etc/hostname文件 sudo gedit /etc/hostname (修改后需重启才能生效) 修改host文件(映射各个节点IP): sudo gedit /etc/hosts 在后面添加内容为: 172.22.

Ubuntu 12.04下spark1.0.0 集群搭建(原创)

spark1.0.0新版本的于2014-05-30正式发布啦,新的spark版本带来了很多新的特性,提供了更好的API支持,spark1.0.0增加了Spark SQL组件,增强了标准库(ML.streaming.GraphX)以及对JAVA和Python语言的支持: 下面,我们首先进行spark1.0.0集群的安装,在这里我使用了两台服务器,一台作为master即namenode主机,另一台作为slave即datanode主机,增加更多的slave只需重复slave部分的内容即可.: 系统版本

使用vuejs2.0和element-ui 搭建的一个后台管理界面

说明: 这是一个用vuejs2.0和element-ui搭建的后台管理界面. 相关技术: vuejs2.0:渐进式JavaScript框架,易用.灵活.高效,似乎任何规模的应用都适用. element-ui:基于vuejs2.0的ui组件库. vue-router:一般单页面应用spa都要用到的前端路由. axios: 基于 Promise 的 HTTP 请求客户端,可同时在浏览器和 node.js 中使用. mock.js: 生成随机数据,拦截 Ajax 请求,让前端攻城师独立于后端进行开发.

vue2.0新手环境搭建

#vue2.0新手环境搭建 1. 安装node.js(稳定版本,>4.0.0即可)2. 获取nodejs模块安装目录访问权限(windows跳过此步)sudo chmod -R 777 /usr/local/lib/node_moudules ``` sudo chmod -R 777 /usr/local/lib/node_moudules ```3. 安装淘宝镜像 ``` npm install -g cnpm ```4. 安装webpack ``` cnpm install webpack

pxe自动安装redhat7.0服务的搭建与配置

一.简单介绍 PXE(preboot execute environment,预启动执行环境)是由Intel公司开发的最新技术,工作于Client/Server的网络模式,支持工作站通过网络从远端服务器下载映像,并由此支持通过网络启动操作系统,在启动过程中,终端要求服务器分配IP地址,再用TFTP(trivial file transfer protocol)或MTFTP(multicast trivial file transfer protocol)协议下载一个启动软件包到本机内存中执行,由