Hexo部署到阿里云服务器
1. 使用的工具
WinSCP(可视化界面操作linux系统下的文件夹),Xshell5(远程连接工具)
2. 修改配置规则
点击实例id—本实例安全组—配置规则—添加80端口
3. 安装nginx
安装nginx需要相关的依赖库,我们先进行库的安装。
3.1 安装gcc gcc-c++
1 | yum install -y gcc gcc-c++ |
3.2 安装PCRE库
1 | cd /usr/local/ |
3.3 安装 openssl 、zlib 、 gcc 依赖
1 | yum -y install make zlib zlib-devel gcc-c++ libtool openssl openssl-devel |
3.4 安装nginx
安装nginx一定要在local文件夹下
1 | cd /usr/local/ |
3.5 修改配置文件
把/usr/local/nginx/conf/nginx.conf右击使用内部编辑器打开,修改为如下内容:
1 | server { |
保存退出
3.6 启动nginx
启动后在浏览器中输入公网IP,即可弹出nginx或centos初始界面(验证nginx是否成功安装)
常用命令:
启动:/usr/local/nginx/sbin/nginx
重启:/usr/local/nginx/sbin/nginx -s reload
检测配置文件是否正常:/usr/local/nginx/sbin/nginx -t
4. 安装Git以及Node.js
4.1 安装Node.js
1 | curl -sL https://rpm.nodesource.com/setup_10.x | bash - |
查看是否成功
1 | node -v |
可以显示版本号即为成功
4.2 安装Git及配置仓库
1 | yum install git |
在如下位置添加
git ALL=(ALL) ALL
vi指令执行之后按i进入输入模式
编辑完成之后按一下esc
然后输入:wq即可退出
4.3 执行以下指令更改文件夹权限
1 | chmod 400 /etc/sudoers |
4.4 切换git用户并且建立密钥
1 | su git |
4.5 创建git仓库
1 | cd ~ |
4.6 新建/home/www/website文件夹
在root用户下执行,所限先su root切换为root账户
1 | su root |
4.7 测试本地是否能够远程连接服务器
在cmd或git中输入ssh -v git@服务器的公网ip
(我的cmd显示的不是内部命令,所以我用了git,可以连上)
4.8 修改本地博客目录中的配置文件_config.yml
1 | deploy: |
这里说一下
url: #域名没备案好就填公网IP
root: / #这里一开始没加东西,就报错,说是找不到网站目录,后来加了个/就好了。
5. 问题总结
线上服务器进行了ip地址的修改,开始出现Host key verification failed的时候,以为删除自己的know_hosts文件即可,但是没有解决本质问题。
解决方法
1 | mknod -m 644 /dev/tty c 5 0 |
公私钥认证
解决了上面的问题,发现之前由于不清楚原因搞乱了.ssh目录的权限,无法公私钥认证登陆,这里记录一下权限设置:
~/.ssh目录的权限必须是0700
~/.ssh/authorized_keys文件权限必须是0600
1 | chmod 600 ~/.ssh/authorized_keys |
·······························································参考博客(https://lneverl.gitee.io/posts/2092ec56.html)