0%

在服务器上安装halo博客

博客部署

本来是想弄Coding实现和Github双部署博客的,所以www的域名停止访问,可是最后Coding也没能部署完成,关键就是Page之后的仓库域名不符合条件,最后项目也署失败,所以干脆直接放弃了,索性弄一个动态的。

coding)bushu
买了一台1核1G的云服务器,不是在阿里云买的,比较便宜些,也没便宜多少,就十几块钱吧,如果在阿里云开发者计划上购买能续费三年,主要是只买了一年的,以后续费就不好续了,优惠价买的,原价贵的要死,只能说上个云太难了。装了个CentOS系统镜像,起初准备搭建一个PHP博客,原因是handsome主题十分美观简洁,但是要付费(建议购买正版,有配套服务,我没钱所以用盗版),选好了后台用的typecho,前端主题准备用handsome(盗版)。等到安装好LAMP之后,发现这个博客后台框架并不咋滴,虽然有很多人用,本身硬件就不行,运行起来特别慢,要下载好多插件,还要动手改源码,对于一个不懂php的新手来说很不友好。过了几天直接换成halo框架,操作很简单,如果选择这种的,根本不需要安装LAMPhalo是一个Java动态开源的博客项目,所以直接到官网下载一个项目JAR包就行,放到服务器上,只需要配置好Java环境,一道nohup java -jar halo-1.4.2.jar &命令就运行起来了,速度快, 特别方便!而且halo的后台页面比较美观,功能齐全,不像typecho还要弄一个插件美化一下,一个有几十KB的,有几十M的,明显增加了服务器运行负担。

备案

另外服务器在ICP备案之后才能进行域名解析,一般要十天左右完成!所以买了服务器和域名就尽早备案,别耽误博客上线时间。可以把博客放到服务器上运行,之后就是安装博客,和前端博客的美化,halo主题有不少,可以到主题仓库挑选,下载压缩包或者远程拉取都行。

handsome主题

如果你选择安装typecho购买handsome主题的话,建议直接让他给你买好服务器安装好,一条龙服务嘛,毕竟花了钱的!但如果你只是买主题的话,安装操作会比较麻烦一点,首先配置好环境,需要LAMP或者LNMP,反正Mysqlphp是一定要安装的,PhpMysql服务要一直开启,若遇到yum没用相应的安装包,安装包版本低的情况,可以更换yum包管理器的安装源。

cd /etc/yum.repos.d/ # 进入yum源配置文件夹,根据centos版本下载对应的新源
# 如果wget命令不生效,说明还没有安装wget工具
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo 
curl -O http://mirrors.aliyun.com/repo/Centos-7.repo 
yum clean all #清除缓存
yum makecache #生成缓存,会把新下载CentOS-Base.repo源生效
yum -y update #更新

很多软件包在yum官方源里面没有的,也可以使用epel源,也就是安装epel-release软件包。EPEL (Extra Packages for Enterprise Linux)是基于Fedora的一个项目,为“红帽系”的操作系统提供额外的软件包,适用于RHEL、CentOS等系统。

yum install epel-release #安装epel

Mysql注意事项

在安装Mysql时,注意CentOS7放弃了MySQL,而改使用MariaDB,MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护 。开发这个分支的原因之一是甲骨文公司收购了MySQL后,有将MySQL闭源的潜在风险, 因此社区采用分支的方式来避开这个风险。MariaDB的目的是完全兼容MySQL,包括API和命令行,使之可以成为MySQL的代替品。 在存储引擎上,从10.0.9版起使用XtraDB来代替MySQLInnoDB。 MariaDB由MySQL的创始人麦克尔主导开发,他早前曾将自己创建的公司MySQL AB卖给了SUN公司,此后,随着SUN被甲骨文收购。

yum list | grep mariadb #查看yum源中mariadb安装包列表
yum install mariadb-5.5.56-2.el7.x86_64 #安装相应版本
rpm -qa | grep MariaDB  #查看mariadb安装包
systemctl enable mysqld #开机启动mysql服务
systemctl start mysqld.service #开启服务(systemctl status查看服务)
#然后创建typecho博客需要的数据库typecho(默认)和用户名、密码

端口映射

由于halo项目的默认端口为8090,所以需要进行服务器端口的映射,不然访问不到,将80端口映射到8090,如下:

iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 8090 #映射端口80到8090
iptables -t nat -A PREROUTING -p tcp --dport 443 -j REDIRECT --to-port 8090 #映射端口443到8090
service iptables restart #重启防火墙

备案之后可以进行域名解析就完事了,通过域名能访问就正常。 另外你也可以深入了解一下halo框架的具体实现,学习学习,确实是一个不错的Java项目。 另外你也可以深入了解一下halo框架的具体实现,学习学习,确实是一个不错的Java项目。