记录我的博客服务器搭建
写在前面
最近由于不可描述的原因服务器一度被河蟹,上周末有时间,科学上网,找回自己的以前的数据,重新部署了服务器,现在就我部署过程,做一次复盘。
服务器选择
服务器我选择的参数如下:
产品:Digital Ocean (国外VPS服务器)
规格:选择 5$/month
系统:CentOS 7.4
邀请链接
通过邀请链接(点击),可以享受 10美元的补贴,也就是 免费试用两个月。
域名选择
我是在 阿里云 上购买并实名制域名的
博客选择
服务器运行环境
LNMP 一键部署
自己尝试过代建 LAMP 和 LNMP,后来发现 LNMP 一键安装很符合我,教程简单。如果喜欢自己搭建,我博客也有相关的教程供大家使用。
LNMP 搭建教程
- 安装 wget
yum -y install wget
- 安装 LNMP 稳定版(要耐心等待安装) 安装过程中会涉及到让你填写配置参数,例如:数据库版本,PHP 版本,缓存机制,数据库密码等。请参考官网教程
wget -c http://soft.vpser.net/lnmp/lnmp1.4.tar.gz && tar zxf lnmp1.4.tar.gz && cd lnmp1.4 && ./install.sh lnmp
- 检测安装
访问 http://你的IP 能够看到 LNMP 一键安装字样,即可。
- 数据库远程连接
这一节是重点,主要涉及两个知识:Mysql 远程账户的创建 和 CentoS 端口开放
4.1 Mysql 远程账户的创建
例如:我预设的远程 Mysql 登录账号名跟密码为 noasis
// 在 CentOS 控制台进入 Mysql
mysql -uroot -p
// 输入密码(上面部署时需要)
******
// 创建一个 Mysql 账号(账号名密码:noasis)
create user noasis@'localhost' identified by 'noasis';
// 赋予此账号远程登录权限
GRANT ALL PRIVILEGES ON *.* TO 'noasis'@'%' IDENTIFIED BY 'noasis' WITH GRANT OPTION;
// 更新 Mysql
FLUSH PRIVILEGES;
另外:如果先要禁止远程登录,只需要在 mysql 数据库中 user 表中删除 noasis 记录即可。
4.2 CentOS 端口 开发(主要是 22,3306,80)
在使用 Navicat 远程数据库登录时,发现 10038 错误,主要因为服务器 3306 端口开放问题。
CentOS 7.0默认使用的是firewall作为防火墙,这里改为iptables防火墙。
1、关闭firewall:
systemctl stop firewalld.service
systemctl disable firewalld.service
systemctl mask firewalld.service
2、安装iptables防火墙
yum install iptables-services -y
3.启动设置防火墙
# systemctl enable iptables
# systemctl start iptables
4.查看防火墙状态
systemctl status iptables
5编辑防火墙,增加端口
vi /etc/sysconfig/iptables #编辑防火墙配置文件
-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
:wq! #保存退出
6.重启配置,重启系统
systemctl restart iptables.service #重启防火墙使配置生效
systemctl enable iptables.service #设置防火墙开机启动
LNMP 服务器部署
其实就是 按照 LNMP 官网介绍即可。官网教程
注意两点:
项目的存储位置:
// 进入路径
cd /home/wwwroot/
// 查看文件列表
ls
项目对应的 Nginx 配置文件
涉及到重写配置,以及 Nginx 的其他配置
cd /usr/local/nginx/conf/vhost
ls
最后的小提示
由于选择的服务器是国外,所以代码上传是一个障碍,速度很不理想,我的建议是在 github 或者 码云 上创建一个项目,将 通过 git 的方式 同步到服务器上