Hugo博客部署到腾讯云轻量级服务器
文章目录
- 一.前置条件
- 二.服务器下载nginx
- 三.防火墙设置
- 四.将静态网页传送到服务器
- 五.申请ssl证书
- 六.配置nginx的nginx.conf文件
- 七.后续发布文章
文章内容可能不全面和详细,还需要各位看官多动手百度
博客原文地址:Hugo博客部署到腾讯云轻量级服务器
一.前置条件
1. 购买服务器和服务器
我买的服务器是腾讯云的轻量级服务器,双十一的时候打折买的,3年144元,还有一个域名3年89元,如果是学生或者经济紧张可以考虑节日的时候买。
性能:1核2GB,每月500GB流量,固定50GB的硬盘空间,选择的镜像为Centos操作系统,如果博客访问量不是特别大,这种性能对于搭建博客还是比较合适。
2. 搭建hugo博客
参考我的这篇文章:Hugo博客搭建,或者是百度。
3. 域名备案
如果hugo博客部署到github,那么可以不需要备案,因为github属于国外的服务器,但是如果自己用大陆服务器搭建就需要备案,否则用域名打开网页后会提示网站需要备案,备案请点击这里:腾讯云域名备案。
域名备案要个把月时间,所以请先备案好域名,不然只能用ip地址访问博客了。
二.服务器下载nginx
进入腾讯云控制台登录服务器,先确保Centos有sudo权限
sudo -l
确保80端口(http)和443端口(https)没有被占用,如果没有显示任何结果则说明没有被占用
sudo netstat -tulpn | grep :80
sudo netstat -tulpn | grep :443
安装nginx
sudo yum install -y nginx
设置开机启动nginx
sudo systemctl enable nginx
启动nginx
sudo systemctl start nginx
查看是否启动nginx
sudo systemctl status nginx
在浏览器搜索框输入您的服务器公网ip地址,如果会出现nginx的页面,说明可以导航到您的服务器,即nginx安装成功
三.防火墙设置
为了使外部用户可以访问web服务器,需要开放防火墙,主要是80端口和443端口,可以在服务器的控制台手动设置
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-qH8TStrd-1639634355045)(3.png)]
也可以在服务器终端输入命令
sudo firewall-cmd --permanent --zone=public --add-service=http
sudo firewall-cmd --permanent --zone=public --add-service=https
sudo firewall-cmd --reload
四.将静态网页传送到服务器
hugo通过hugo
命令可以生成一个public文件夹,这里面就是网页上展示的东西
现在要做的事情就是把public文件夹里面的内容传送到服务器上,不过要先在服务器里面建一个public文件夹,我选择的位置是建在 home 文件夹里面
上传文件,我采用的方法是rsync的方式,命令如下
注意:执行这条命令时要在终端把位置调到博客目录下,但是不要进public文件里,因为public后面的/表示public文件夹里面的内容
rsync -avuz --progress --delete public/ root@ip地址:/home/public/
执行这条命令后终端会提示要输入服务器的登录密码,如果之前没有设置密码需要在服务器的控制台设置好
上述命令-avuz
表示的意思可以看这篇文章rsync的选项说明,--progress
表示显示执行过程,--delete
表示删除服务器上public里原先的文件,然后上传新的文件,这个命令可以根据自己的需要选择加上与否
输完命令后看看服务器的/home/public/里面有没有对于的文件就可以了
五.申请ssl证书
为了让网站更安全,首先申请一下https的ssl证书,腾讯云会送一个一年免费的,不过要先申请,然后下载这个证书。也可以通过Let’s encrypt网站申请免费的。不过我用的暂时是腾讯云的。
会得到如下文件
我们只需要Nginx文件夹里面的秘钥对文件,因为在nginx的配置文件里面配置https的时候需要用到,把这两个公秘钥文件上传到服务器。
我是传到了服务器的/etc/nginx目录里,因为我的nginx配置文件也在这个目录下,所以把公秘钥也放在这个目录下,方便调用。先在终端把目录定位到与Nginx文件夹同一层级的地方,命令如下
注意这里不能加上
--delete
,否则会把里面的文件都删掉,我就踩了这个坑,导致要重新安装nginx
rsync -avuz --progress Nginx/ root@ip地址:/etc/nginx/
于是在/etc/nginx下多了两个文件如下
六.配置nginx的nginx.conf文件
上面讲了我的nginx.conf在/etc/nginx目录下,所以把目录定位到这里,然后输入sudo vim nginx.conf/
下面是我的配置文件里面的内容,标出了要配置的几个地方,其他一般是文件之前默认生成的,若有不懂的地方请百度
# 要配置的第一个地方,这里的用户要改成root,不然可能会没有权限
user root;worker_processes auto;
error_log /var/log/nginx/error.log;
pid /run/nginx.pid;include /usr/share/nginx/modules/*.conf;events {worker_connections 1024;
}http {log_format main '$remote_addr - $remote_user [$time_local] "$request" ''$status $body_bytes_sent "$http_referer" ''"$http_user_agent" "$http_x_forwarded_for"';access_log /var/log/nginx/access.log main;sendfile on;tcp_nopush on;tcp_nodelay on;keepalive_timeout 65;types_hash_max_size 2048;include /etc/nginx/mime.types;default_type application/octet-stream;include /etc/nginx/conf.d/*.conf;# 配置httpserver {# 要配置的第二个地方,80访问端口listen 80 default_server; listen [::]:80 default_server;# 要配置的第三个地方,域名server_name www.sulvblog.cn;rewrite ^(.*) https://$server_name$1 permanent; #自动从http跳转到https# 要配置的第四个地方,这里指向public文件夹root /home/public;include /etc/nginx/default.d/*.conf;# 要配置的第五个地方location / {root /home/public;index index.html index.htm;}# 要配置的第六个地方error_page 404 /404.html;location = /40x.html {root /home/public;}error_page 500 502 503 504 /50x.html;location = /50x.html {}}# 配置httpsserver {listen 443 ssl;# 要配置的第七个地方server_name www.sulvblog.cn;root /home/public;# 要配置的第八个地方ssl_certificate /etc/nginx/1_sulvblog.cn_bundle.crt;ssl_certificate_key /etc/nginx/2_sulvblog.cn.key;# 要配置的第九个地方,可以按照我的写法ssl_session_timeout 10m;ssl_protocols TLSv1 TLSv1.1 TLSv1.2;ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;ssl_prefer_server_ciphers on;# 要配置的第十个地方error_page 404 /404.html;location = /404.html {root /home/public;}include /etc/nginx/default.d/*.conf;}}
其中端口 80 用于配置 http 服务,端口 443 用于配置 https 服务,这样就完成了nginx 的配置
修改完成后重加载配置文件
sudo nginx -s reload
检查 nginx 服务的运行情况
sudo systemctl status nginx
重启 nginx 服务
sudo systemctl restart nginx
通过域名访问网站,如果出现博客首页,说明配置成功了,如果域名还没有备案成功,用ip地址访问也可以跳转到博客首页
七.后续发布文章
文章在本地写好后,生成public文件,用rsync上传到服务器就可以了。
到这里就结束了,我也是收集了不少资料,踩了不少坑,毕竟也是第一次弄,有什么问题请留言,一起探讨
Hugo博客部署到腾讯云轻量级服务器相关推荐
- Hexo博客部署到腾讯云服务器
因为使用github仓库存放Hexo博客速度太慢,所以自己买了腾讯云的服务器,现在开始把博客部署到腾讯云,由于域名还没有审核通过,暂时使用公网ip访问 更新:买的域名备案成功了,欢迎大家访问 我的He ...
- Hexo博客部署到腾讯云服务器全过程(Nginx,证书,HTTPS),你要的这里都有
Python微信订餐小程序课程视频 https://edu.csdn.net/course/detail/36074 Python实战量化交易理财系统 https://edu.csdn.net/cou ...
- 腾讯云轻量级服务器Ubuntu系统搭建可视化界面
前言: 以云服务器的方式搭建Linux workstation对比在电脑本地安装虚拟机的优势在于,不需要占用本地电脑资源空间,网络环境等相对稳定,可以用手机等轻量移动设备连接管理等.本文主要介绍使用腾 ...
- 腾讯云轻量级服务器入门教程
1.购买腾讯云轻量级服务器 注册账号.实名认证之后进行购买 12.12限时秒杀_云服务器秒杀_云数据库秒杀_腾讯云 (tencent.com) 2.购买之后,点击右上角信息(由于是轻量级服务器,和其它 ...
- Hexo博客迁移到腾讯云
一开始博客在github pages上,速度比较慢.后来在网上发现许多人说托管到Netify很快,还自带CDN加速.但我迁移过去,发现国内的网根本就登不上,又检测了一下在大陆访问博客的速度,惨不忍睹. ...
- 搭建hugo博客部署到Github
文章目录 前提 安装 启动 部署 增加文章 修改配置 解决图片问题 前提 一定要配置好git,具体教程见 windows下搭建hexo博客部署到github 推荐在Microsoft Store安装W ...
- LAMP搭建博客网站(腾讯云UbuntuCVM、MySQL数据库、域名注册)(WordPress)
LAMP搭建网站(腾讯云UbuntuCVM)(腾讯云MySQL数据库) 环境配置 Linux操作系统: Ubuntu Server 16.04.1 LST 64位(腾讯云CVM) Apache网站服务 ...
- Java部署本地项目到远端服务器(腾讯云轻量级服务器)
腾讯云轻量级服务器官方文档:https://cloud.tencent.com/document/product/1207 1.购买轻量级服务器云资源: PS:学习过程中建议购买低配够用就行,学生有优 ...
- 如何建立一个网站 如何建立一个个人博客 使用腾讯云搭建平台 保姆级教程 使用腾讯云轻量级服务器 腾讯云申请域名 域名备案
我们简单来介绍一下如何创建一个自己的网站博客,这里主要介绍一下大致流程以及注意事项. 1.在腾讯云注册自己的账号并进行实名认证 首先需要注册一个自己的账号并进行实名认证 2.在云产品中搜索轻量级服务器 ...
最新文章
- php写账户冻结_线上开户指南(首次入金2万,账户总净资产不得低于1万,交易佣金万三,最低25,合单,没平台费)入金后才会有账户号...
- Linux Swap空间利用率过高
- java与java ee_RxJava + Java8 + Java EE 7 + Arquillian =幸福
- cnetos7安装zabbix3.0.3安装手册
- 【手机】Windows Mobile手机软件安装卸载方法
- UVA571 - Jugs(数论)
- Ubuntu-安装MySQL5.7并配置用户名密码
- Matlab7.0安装之后Runtime Error警告解决办法
- 程序员如何帮助公司快速上市、获得分红?
- har文件分析http_如何使用HAR文件分析一段时间内的性能
- jdk 中文开发文档
- python实现艾宾浩斯背单词功能,实现自动提取单词、邮件发送,部署在阿里云服务器,再也不用担心背单词啦!!
- 史上最全的工控类软件链接 快收藏备用吧
- 如何将png图像转换成jpg格式呢?
- 自学单片机怎么买开发板?
- c语言看门狗指令pic,PIC单片机之看门狗_看门狗定时器工作原理
- java外卖项目介绍_JavaWeb网上订餐系统项目
- 上海电信路由器有ipv6,电脑无法获取ipv6问题记录
- matlab自带的mri数据集,探查三维 MRI 数据集的切片
- 「开发者说」多系统集成开发-企业自有系统快速上钉钉