9.正式上线—服务器部署
这里为什么要说是正式上线呢,毕竟网站到了服务器看得才,才正规一点儿是吧,像GitHub Pages,倒是免费,但是在国内,DNS解析后需要时间,总会有无法访问或者断连的情况,太不方便
服务器
先来看看,服务器是何方神圣?
服务器是计算机的一种,它比普通计算机运行更快、负载更高、价格更贵。服务器在网络中为其它客户机(如PC机、智能手机、ATM等终端甚至是火车系统等大型设备)提供计算或者应用服务。服务器具有高速的CPU运算能力、长时间的可靠运行、强大的I/O外部数据吞吐能力以及更好的扩展性
根据服务器所提供的服务,一般来说服务器都具备承担响应服务请求、承担服务、保障服务的能力。服务器作为电子设备,其内部的结构十分的复杂,但与普通的计算机内部结构相差不大,如:cpu、硬盘、内存,系统、系统总线等
简单理解:一台不断电,有空间的主题在“天上(云端)”一直在为你放置(部署)上去的资源而服务,能处理各种请求(比如你在导航栏输入域名访问网站)
有两种类型的服务器国内和国外的,根据我国法律规定,中国大陆的网站需要备案,等待的时间可能会长一点。国外的到时不需要备案,但是稳定性和访问速度就不敢保证了,各位小伙伴自己衡量,杰森用的是阿里云的轻应用服务器部署的个人博客网站
购买
这是我的服务器配置,大家可以参考下
如果你是初学者,这个入门级的配置已经足够学生机,可免费领取,具体规则详见社区 >戳我直达<
开发者->成长计划
学生专享(体验后即可得到半月免费ECS服务器,社区内发表使用感受(发一篇博客)可免费续费两月),具体规则请查看官网
账号中心->基本信息位置完成学生认证即可
最新活动 位置购买优惠力度会更大
部署
密码设定
在图示位置出更改远程连接密码,保存好
虽然可以用浏览器远程连接,但是并不建议,因为有一些键盘上的快捷键会被系统误认为是对浏览器的操作,而不是对话框
远程连接
为避免这样的问题出现,我们选择使用第三方工具Putty,具体操作步骤,阿里云的帮助文档已经非常详细,这里不再重复
从这里开始看,根据提示完成操作
启动Putty工具,链接服务器,登陆用户名为root,密码就是在服务器位置设置的密码(Linux操作系统中输入密码为了安全不显示,不必担心)出现以下界面时,说明配置正常,继续下一步即可
git配置
1.输入命令,安装git
yum install git
中途如果暂停,则根据提示输入 yes / y / Y,表示继续安装,知道最后出现complete表示安装成功
2.创建git账户
adduser git
3.添加git账户权限
chmod 740 /etc/sudoers
vim /etc/sudoers
4.执行最后一条命令后,点击键盘i键进入编辑模式,找到图示位置代码
在下面加入一行
git ALL=(ALL) ALL
按 Esc键并输入:wq(含义:保存后退出)
5.回改权限
chmod 400 /etc/sudoers
6.设置git账户密码
sudo passwd git
输入命令回车后连续输入两次密码即可(不显示,正常),出现图示即成功
7.切换至git账户
su git
创建 ~/.ssh 和 ~/.ssh/authorized_keys 文件
mkdir ~/.ssh
vim ~/.ssh/authorized_keys
点击键盘i键进入编辑模式,粘贴本地电脑生成的SSH公钥,文件位置如图
粘贴后,按 Esc键并输入 :wq(含义:保存后退出)
赋予权限
chmod 600 /home/git/.ssh/authorized_keyschmod 700 /home/git/.ssh
8.本地 git bash here 中测试是否免密登陆成功
ssh -v git@服务器公网IP
出现图示内容表示连接成功
9.服务器中创建仓库并完成配置
切换到root账户
sudo su root
创建repo仓库目录
mkdir /www/repo
赋予权限
chown -R git:git /www/repochmod -R 755 /www/repo
建立网站根目录hexo
mkdir /www/hexo
赋予权限
chown -R git:git /www/hexochmod -R 755 /www/hexo
新建空白的git仓库并初始化
cd /www/repogit init --bare hexo.git
10.创建 Git 钩子,用于自动部署
vim /www/repo/hexo.git/hooks/post-receive
同上,进入编辑模式,粘贴下面代码并保存退出
#!/bin/bashgit --work-tree=/www/hexo --git-dir=/www/repo/hexo.git checkout -f
修改权限
chown -R git:git /www/repo/hexo.git/hooks/post-receivechmod +x /www/repo/hexo.git/hooks/post-receive
仓库建立完毕
安装Nginx
Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,在BSD-like 协议下发行。其特点是占有内存少,并发能力强,事实上nginx的并发能力在同类型的网页服务器中表现较好
Nginx (engine x) 是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务,其将源代码以类BSD许可证的形式发布,因它的稳定性、丰富的功能集、简单的配置文件和低系统资源的消耗而闻名
yum install -y wget && wget -O install.sh //download.bt.cn/install/install_6.0.sh && bash install.sh
中途输入 y,表示继续安装(和上面一样)等待安装完成,会显示登陆网址和初始密码
注意红框位置,如果两个网址都无法访问,请在服务器安全组 / 防火墙中放行8888端口
输入初始账户名、密码登陆
进入后,搜索Nginx点击安装(我这里已经装过了)
网站–>添加站点,域名形式xxx.com 无需任何前缀
设置–>配置文件,修改红框内容
设置–>网站目录,修改为 /www/hexo 并保存
服务器终端,重启服务
service bt restart
至此,服务器端配置完成
Hexo配置修改
进入本地博客根目录,修改 _config.yml 文件部署位置
GitHub Pages 设定
服务器设置
源码如下
# Deployment## Docs: //hexo.io/docs/one-command-deploymentdeploy: type: git repo: git@你的域名:/www/repo/hexo.git branch: master # 注意此处分支设定,需在仓库中选择默认的分支
打开Putty工具,连接服务器赋予权限
chown -R git:git /www/repo/chown -R git:git /www/hexo/
本地根目录下打开 git bash here执行命令
hexo clean //清除缓存hexo d -g //快速部署
出现图示内容表示部署成功,等到备案完成后就可以通过域名访问了
网站备案
杰森的网站也是最近才备案下来,所以如果你等不及,就另寻他路吧,在国内,咱可不敢造次啊啊啊
你会经历以下几个阶段
购买服务器后,绑定域名后系统会提示你没有备案,根据提示完成即可
ICP备案
英文全称:Internet Content Provider,中文全称:网络内容提供商
ICP可以理解为向广大用户提供互联网信息业务和增值业务的电信运营商,是经国家主管部门批准的正式运营企业或部门
全国联网备案
进入官网 在阿里云完成ICP备案后,系统也会提示你操作
部署完成后,选择联网备案登陆
提交网站所有人信息和一些基本材料等待审核通过,最后在网页底部插入代码即可,效果如图
到这里,你的个人网站就成功上线了,也部署到了服务器。内容会根据大家的反馈情况持续更新!!!