快速搭建博客是使用现成已经封装好的或者可安装的博客软件。将其安装到我们的服务器并配置访问即可。
第一种博客:wordpress(php)
第二种博客:halo(java)
可以查看我的博客:点击查看
建立自己的博客一定要有自己的服务器,有自己的服务器才能安装自己的博客软件,并且可以让别人访问到。
服务器提供商有很多,比如华为云,阿里云,腾讯云。
此步有没有都可以,不过一个域名可以让别人更快的记住我们的网站,而且也容易分享,因为一般ip地址也是不漏出来的。
Wordpress网站程序:这个非常重要,你可以到wordpress的官网(https://wordpress.org/)去下载一个最新版的程序。
yum -y install httpd
查看当前apache的运行状态
查看状态:service httpd status
Apache开启服务:systemctl start httpd
Apache停止服务:systemctl stop httpd
开启apache服务并且开机自启动
systemctl start httpd.service
systemctl start httpd.service
开启服务器的80端口
firewall-cmd --add-service=http --permanent
firewall-cmd --add-service=https --permanent
firewall-cmd --add-port=80/tcp --permanent
配置服务器的安全组,这个因为不同的服务商不同
流程就是,进入服务器配置,选择配置安全组(每个服务商都提供了),添加入站规则,开启80端口,并且使所有ip都可访问,0.0.0.0/0
rpm -Uvh https://dl.fedoraproject.org/pub/epel/7/x86_64/Packages/e/epel-release-7-11.noarch.rpm
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
删除老版本的php
yum -y remove php*
安装拓展包
yum -y install php72w php72w-cli php72w-fpm php72w-common php72w-devel
启动服务
systemctl enable php-fpm.service
systemctl start php-fpm.service
安装YUM Repo
下载
wget https://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm
安装
rpm -ivh mysql57-community-release-el7-9.noarch.rpm
yum安装mysql
yum install mysql-server
启动mysql
systemctl start mysqld #启动MySQL
获取临时密码,登陆时用此密码登录,在修改密码即可
grep 'temporary password' /var/log/mysqld.log
登录MySQL
mysql -u root -p
输入密码
下载wordpress
wget http://wordpress.org/latest.tar.gz
解压
tar -xzvf latest.tar.gz
拷贝到根目录下
cp -r wordpress /var/www/html/
配置wordpress的数据库
cp wp-config-sample.php wp-config.php
vi wp-config.php
安装
http://ip/wordpress/wp-admin/install.php
购买服务器的时候直接选择wordpress镜像,简单粗暴。
yum update -y
# 安装 OpenJRE
yum install java-1.8.0-openjdk -y
#手动安装
进入jdk官网,选择tar.gz下载,通过ftp软件上传到服务器。
然后解压,配置Java环境变量
# 检测是否安装成功
java -version
下载配置文件
# 下载配置文件到 ~/.halo 目录
curl -o ~/.halo/application.yaml --create-dirs https://dl.halo.run/config/application-template.yaml
修改配置文件
# 使用 Vim 工具修改配置文件
vim ~/.halo/application.yaml
server:
port: 8090
# Response data gzip.
compression:
enabled: false
spring:
datasource:
# H2 database configuration.
driver-class-name: org.h2.Driver
url: jdbc:h2:file:~/.halo/db/halo
username: admin
password: 123456
# MySQL database configuration.
# driver-class-name: com.mysql.cj.jdbc.Driver
# url: jdbc:mysql://127.0.0.1:3306/halodb?characterEncoding=utf8&useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true
# username: root
# password: 123456
# H2 database console configuration.
h2:
console:
settings:
web-allow-others: false
path: /h2-console
enabled: false
halo:
# Your admin client path is https://your-domain/{admin-path}
admin-path: admin
# memory or level
cache: memory
使用 MySQL 之前,必须要先新建一个 halodb 数据库,MySQL 版本需 5.7 以上。
create database halodb character set utf8mb4 collate utf8mb4_bin;
运行 Halo
Halo 的整个应用程序只有一个 Jar 包,且不包含用户的任何配置,它放在任何目录都是可行的。需要注意的是,Halo 的整个额外文件全部存放在 ~/.halo 目录下,包括 application.yaml(用户配置文件),template/themes(主题目录),upload(附件上传目录),halo.db.mv(数据库文件)。一定要保证 ~/.halo 的存在,你博客的所有资料可都存在里面。所以你完全不需要担心安装包的安危,它仅仅是个服务而已。
# 下载最新的 Halo 安装包,{{version}} 为版本号,不带 v,更多下载地址请访问 https://halo.run/archives/download.html
wget https://dl.halo.run/release/halo-{{version}}.jar -O halo-latest.jar
# 启动测试
java -jar halo-latest.jar
如看到以下日志输出,则代表启动成功.
run.halo.app.listener.StartedListener : Halo started at http://127.0.0.1:8090
run.halo.app.listener.StartedListener : Halo admin started at http://127.0.0.1:8090/admin
run.halo.app.listener.StartedListener : Halo has started successfully!
设置开机启动
写了三个linux脚本
先查看端口号是否被占用
在上面的配置文件可以设置端口号。
我用的默认的8090端口
输入:
lsof -i tcp:8090
如果存在进程占用端口
kill -9 进程pid
2.创建两个脚本一个运行脚本,一个停止脚本
halostart.sh
#!/bin/sh
export JAVA_HOME=/usr/java/jdk1.8.0_241
export PATH=$JAVA_HOME/bin:$PATH
nohup java -jar /root/halo-latest.jar > /root/logs/halolog.log 2>&1 &
echo $! > /var/run/halo-service.pid
halostop.sh
#!/bin/sh
PID=$(cat /var/run/halo-service.pid)
kill -9 $PID
3.创建服务service脚本
halo-service.service
[Unit]
Description=halo-service
After=syslog.target network.target remote-fs.target nss-lookup.target
[Service]
Type=forking
ExecStart=/root/halo/halostart.sh
ExecStop=/root/halo/halostop.sh
PrivateTmp=true
[Install]
WantedBy=multi-user.target
完成之后,给两个运行脚本提权
chmod 777 halostart.sh
chmod 777 halostop.sh
更新服务配置文件,开机自启,启动服务
#更新服务配置文件
systemctl reload halo-service
#设置开机启动
systemctl enable halo-service
#启动
systemctl start halo-service
#停止
systemctl stop halo-service
#重启
systemctl restart halo-service