Tomcat + hexo 搭建博客

本文详细记录了使用Hexo生成静态网站并结合Tomcat进行部署的过程,包括解决图片显示问题及跨平台文件传输挑战。

简练的说:  

 1   安装 hexo 

 2   git clone  https://github.com/JoeyBling/hexo-theme-yilia-plus.git  ; hexo g ; hexo server;

 3  安装 tomcat

 4  配置 tomcat 路径到 hexo 生成的 public 目录 如 server.xml 里加(<Context path="" docBase="../../../public/" debug="0" reloadable="true" />)

 5  浏览器访问 localhost:8080

自我介绍:

十年底层驱动生涯,先是做单片机,整点stm32 电路板相关的原理图和PCB,后来接触了 linux 和 android ,一直改着各式各样的linux驱动让操作系统运行起来。  

引子:

  年前99块买了一个腾讯云服务器,让自己敲敲 Linux 命令,免得忘了;前两天看电影《社交网络》里有说到博客,想起两年前一同事说 github 可以搭博客,跃跃欲试,但怕其他博客在不流行的时候消失了,决定搭建到自己的服务器上。

jekyll:

 1 百度 搜索 github 博客,选中了 Jekyll + github  ,fork , modify ,rename 一切顺利,但是 github.io 始终看不到网页,直到刷了20分钟,才知道是 github 慢。

 2 不熟悉jekyll的用法, 把jekyll 的git 直接放 tomcat 里,出来的根本不是想要的页面。

 3 直接用 jekyll 的命令尝试跑起来测试,发现 centos 7 好多依赖包不对,这条路没走通。

 4 写博客时 对md (markdown) 不熟悉,也只在github 上做了一个格式很混乱的测试。

hexo:

继续探索第二种:hexo 

1 看了官网介绍,简单几行 linux 的命令(npm install hexo-cli -g),先跑一个hello world 吧

      实操不简单:先按装 nvm 来管理 node.js ,npm 能安装 hexo 必须要node.js v8.10.0 以上,手欠的 装了一个 0.10.48 ,单卸载 0.10.48 这个版本就花了半个小时 。

     我不太喜欢用 root 用户,在安装时,遇到几次环境变量的问题,导致shell 重启后,nvm ,node,hexo 找不到这个命令

各种修改 bashrc 才让 hexo init ,hexo g ,hexo server 可用了, 用 curl 也终于看到了 4000端口的 hello word 页面。

 

2 从github down 下了一个 主题, hexo g ,hexo server 运行,从浏览器上看 还挺漂亮

于是想当然的     nohup hexo server &

但是不听话的是关掉shell ,服务还是断掉。

 

3 想起用tomcat 部署了,但如何放置代码呢?搜了很久才在 csdn 里找到 public 这个目录。

实操过程很有趣: xftp 过期了,我的tomcat 在本地电脑上,怎么把public 的文件弄下来呢,重新下载了 xftp ,但是装了后还需要破解,但破解太花时间了。于是准备安装samba ,samba 服务和配置弄好后,windows 上始终连不上,直到网上搜索到腾讯云封了samba 相关的端口,放弃。最后想到了 scp 命令来远程拷贝,问题又来了:windows 咋用 scp 呢?还好以前安装了 git bash。

4 tomcat + hexo 的 public 静态文件测试,localhost:8080/public 能看到博客的网页,但是图片没有。一度怀疑是不是 public 的目录不对,不能用tomcat 这样部署。继续搜索,有的说需要ngnix ,但转念一想,还是觉得tomcat 可以完成,再按 F12打开浏览器调试模式, 硬着头皮调试,偶然看到图片的相对路径不对,于是修改server.xml 完美解决问题

 

至此: tomcat + hexo 博客部署完毕,在网上搜索了一个 word转 markdown的工具,放了两篇文章,挺不错。

 

总结:

对底层来说,上层的很多东西不容易理解,总算用 tomcat + hexo 的静态文件部署出来了。具体完善博客,如图片,SEO 等下一个阶段再来研究。欢迎留言指正

 

环境说明

服务器:腾讯云 1核1G ,Centos7.2 Linux 系统, node.js v8.10.0, git ,java 8, tomcat 8.

本机: securetCRT ,git bash , chrome 

 

### 部署和配置个人博客网站 #### 选择合适的服务器操作系统与环境 对于Linux服务器的选择,CentOS是一个稳定可靠的操作系统选项。在部署之前,确保选择了适合的版本,例如CentOS 7.2 x86_64[^1]。 #### 安装必要的软件包 为了支持Java应用程序,如基于JSP的网页,安装适当版本的JDK是必需的。文中提到使用的是`jdk-8u121-linux-x64`作为开发工具包。此外,考虑到许多现代博客平台可能更倾向于Python或其他脚本语言编写的应用程序,则可以考虑创建虚拟环境来隔离不同项目的依赖关系,这可以通过命令`python3 -m venv <目录>`实现[^3]。 #### Tomcat Web容器的设置 Tomcat作为一个流行的Servlet/JSP引擎,非常适合用来承载简单的动态内容站点。按照描述中的做法,下载并解压特定版本(`apache-tomcat-8.5.11`)之后,还需要完成一些基本配置工作,比如调整server.xml文件以适应实际需求,并确保防火墙允许HTTP请求通过指定端口(通常是80)[^2]。 #### 构建静态页面或选择现成框架 如果计划构建较为复杂的交互式博客功能,建议采用成熟的CMS(Content Management System)解决方案,如WordPress, Hexo等;而对于非常基础的需求来说,仅需准备几个HTML/CSS/JavaScript组成的静态页面即可满足展示目的。 #### 自定义域名解析和服务启动 获取自己的顶级域名为后续操作奠定了良好基础。接着要做的就是将此域名指向新购置的云主机IP地址,最后一步则是让Tomcat监听来自外部网络对该域名发起的所有访问请求,从而正式对外提供服务。 ```bash # 更新yum源列表并安装wget用于下载资源 sudo yum update && sudo yum install wget # 下载并安装OpenJDK 8 sudo yum install java-1.8.0-openjdk-devel.x86_64 # 创建tomcat用户组及用户 groupadd tomcat useradd -s /sbin/nologin -g tomcat -d /opt/tomcat tomcat # 进入/opt目录并从官网下载Apache Tomcat压缩包 cd /opt/ wget https://archive.apache.org/dist/tomcat/tomcat-8/v8.5.11/bin/apache-tomcat-8.5.11.tar.gz # 解压至当前路径并将权限赋予给tomcat用户 tar xf apache-tomcat-8.5.11.tar.gz chown -R tomcat:tomcat ./apache-tomcat-8.5.11/ # 设置开机自启以及立即启动Tomcat服务 systemctl enable tomcat.service service tomcat start ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值