基于腾讯云快速搭建博客
https://github.com/otale/tale/wiki/01.-%E5%A6%82%E4%BD%95%E4%BD%BF%E7%94%A8Tale
01. 如何使用Tale
biezhi edited this page on 8 Dec 2018 · 12 revisions
必须环境
该说明针对于服务器环境,如 Ubuntu、CentOS,您只需要有 JDK8 的环境即可。
JDK8
Ubuntu
sudo add-apt-repository ppa:webupd8team/java
sudo apt update
sudo apt install -y oracle-java8-installer
sudo apt install -y oracle-java8-set-default
java -version
CentOS
wget -c --header "Cookie: oraclelicense=accept-securebackup-cookie" http://download.oracle.com/otn-pub/java/jdk/8u131-b11/d54c1d3a095b4ff2b6607d096fa80163/jdk-8u131-linux-x64.rpm
sudo yum localinstall -y jdk-8u131-linux-x64.rpm
java -version
安装 Tale 博客
执行如下命令
$ wget -qO- git.io/fxsWx | bash
$ cd tale
$ chmod +x ./tool
$ ./tool start
然后访问浏览器的 http://IP:9000
即可安装。
如果您通过该脚本下载失败可能是服务器无法连接到 Github,参考 install.sh 下载最新版本进行手动安装。
后台登录地址:http://IP:9000/login
启动博客程序
脚本说明
在 tale
根目录下有一个名为 tool
的文件,该文件为帮助脚本。
$ bash tool
Usage: tool {start | stop | restart | status | upgrade | log}
- start: 启动 tale
- stop: 停止 tale
- restart: 重启 tale
- status: 查看 tale 运行状态
- log: 查看 tale 运行日志
- upgrade: 升级 tale,会自动备份
Nginx 配置
如果你想使用 Nginx 绑定域名,下面是一份参考配置。
server {
listen 80;
server_name tale.biezhi.me;
access_log off;
location / {
proxy_pass http://127.0.0.1:9000;
proxy_read_timeout 300;
proxy_connect_timeout 300;
proxy_redirect off;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
}
}
其他注意事项
在整个博客系统中,当你第一次搭建成功后会在 resources
目录下生成一个名为 tale.db
的数据库文件,该文件是博客系统的所有文章数据。 如果你想备份的话,直接备份这个文件就可以了,想备份 SQL 语句可以使用 sqlite3 tale.db < tale_0912.sql
进行备份。
由于我tomcat还有一个项目占用了默认8080端口,这个9000的服务,每次都得www.mbhsoft.cn:9000才能进入很不方便。所需要用Nginx配置 端口转发
Nginx
安装所需环境
Nginx 是 C语言 开发,建议在 Linux 上运行,当然,也可以安装 Windows 版本,本篇则使用 CentOS 7 作为安装环境。
一. gcc 安装
安装 nginx 需要先将官网下载的源码进行编译,编译依赖 gcc 环境,如果没有 gcc 环境,则需要安装:
yum install gcc-c++
二. PCRE pcre-devel 安装
PCRE(Perl Compatible Regular Expressions) 是一个Perl库,包括 perl 兼容的正则表达式库。nginx 的 http 模块使用 pcre 来解析正则表达式,所以需要在 linux 上安装 pcre 库,pcre-devel 是使用 pcre 开发的一个二次开发库。nginx也需要此库。命令:
yum install -y pcre pcre-devel
三. zlib 安装
zlib 库提供了很多种压缩和解压缩的方式, nginx 使用 zlib 对 http 包的内容进行 gzip ,所以需要在 Centos 上安装 zlib 库。
yum install -y zlib zlib-devel
四. OpenSSL 安装
OpenSSL 是一个强大的安全套接字层密码库,囊括主要的密码算法、常用的密钥和证书封装管理功能及 SSL 协议,并提供丰富的应用程序供测试或其它目的使用。
nginx 不仅支持 http 协议,还支持 https(即在ssl协议上传输http),所以需要在 Centos 安装 OpenSSL 库。
yum install -y openssl openssl-devel
官网下载
1.直接下载.tar.gz
安装包,地址:https://nginx.org/en/download.html
2.使用wget
命令下载(推荐)。确保系统已经安装了wget,如果没有安装,执行 yum install wget 安装。
wget -c https://nginx.org/download/nginx-1.12.0.tar.gz
我下载的是1.12.0版本,这个是目前的稳定版。
解压
依然是直接命令:
tar -zxvf nginx-1.12.0.tar.gz
cd nginx-1.12.0
配置
其实在 nginx-1.12.0 版本中你就不需要去配置相关东西,默认就可以了。当然,如果你要自己配置目录也是可以的。
1.使用默认配置
./configure
2.自定义配置(不推荐)
./configure \
--prefix=/usr/local/nginx \
--conf-path=/usr/local/nginx/conf/nginx.conf \
--pid-path=/usr/local/nginx/conf/nginx.pid \
--lock-path=/var/lock/nginx.lock \
--error-log-path=/var/log/nginx/error.log \
--http-log-path=/var/log/nginx/access.log \
--with-http_gzip_static_module \
--http-client-body-temp-path=/var/temp/nginx/client \
--http-proxy-temp-path=/var/temp/nginx/proxy \
--http-fastcgi-temp-path=/var/temp/nginx/fastcgi \
--http-uwsgi-temp-path=/var/temp/nginx/uwsgi \
--http-scgi-temp-path=/var/temp/nginx/scgi
注:将临时文件目录指定为/var/temp/nginx,需要在/var下创建temp及nginx目录
编译安装
make
make install
查找安装路径:
whereis nginx
启动、停止nginx
cd /usr/local/nginx/sbin/
./nginx
./nginx -s stop
./nginx -s quit
./nginx -s reload
启动时报80端口被占用:nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
解决办法:1、安装net-tool 包:yum install net-tools
./nginx -s quit
:此方式停止步骤是待nginx进程处理任务完毕进行停止。
./nginx -s stop
:此方式相当于先查出nginx进程id再使用kill命令强制杀掉进程。
查询nginx进程:
ps aux|grep nginx
linux解决nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
查看端口
netstat -ntlp
找到80端口的PID
杀死线程
kill 6751
[Nginx 报错: nginx: error] open() “/usr/local/nginx/logs/nginx.pid” failed (2: No such file or directory) 的解决方法
解决方法:
(1)进入 cd /usr/local/nginx/conf/ 目录,编辑配置文件nginx.conf ;
(2)在配置文件中有个注释的地方: #pid logs/nginx.pid;
(3)将注释放开,并修改为:pid /usr/local/nginx/logs/nginx.pid;
(4)在 /usr/local/nginx 目录下创建 logs 目录:mkdir /usr/local/nginx/logs
(5)再次启动nginx服务:cd /usr/local/nginx/sbin/nginx 问题解决
/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
重启 nginx
1.先停止再启动(推荐):
对 nginx 进行重启相当于先停止再启动,即先执行停止命令再执行启动命令。如下:
./nginx -s quit
./nginx
2.重新加载配置文件:
当 ngin x的配置文件 nginx.conf 修改后,要想让配置生效需要重启 nginx,使用-s reload
不用先停止 ngin x再启动 nginx 即可将配置信息在 nginx 中生效,如下:
./nginx -s reload
启动成功后,在浏览器可以看到这样的页面:
开机自启动
即在rc.local
增加启动代码就可以了。
vi /etc/rc.local
增加一行 /usr/local/nginx/sbin/nginx
设置执行权限:
chmod 755 rc.local
到这里,nginx就安装完毕了,启动、停止、重启操作也都完成了,当然,你也可以添加为系统服务,我这里就不在演示了。
--------------------------------------分割线 --------------------------------------
Nginx负载均衡配置实战 http://www.linuxidc.com/Linux/2014-12/110036.htm
CentOS 6.2实战部署Nginx+MySQL+PHP http://www.linuxidc.com/Linux/2013-09/90020.htm
使用Nginx搭建WEB服务器 http://www.linuxidc.com/Linux/2013-09/89768.htm
搭建基于Linux6.3+Nginx1.2+PHP5+MySQL5.5的Web服务器全过程 http://www.linuxidc.com/Linux/2013-09/89692.htm
CentOS 6.3下Nginx性能调优 http://www.linuxidc.com/Linux/2013-09/89656.htm
CentOS 6.3下配置Nginx加载ngx_pagespeed模块 http://www.linuxidc.com/Linux/2013-09/89657.htm
CentOS 6.4安装配置Nginx+Pcre+php-fpm http://www.linuxidc.com/Linux/2013-08/88984.htm
Nginx安装配置使用详细笔记 http://www.linuxidc.com/Linux/2014-07/104499.htm
Nginx日志过滤 使用ngx_log_if不记录特定日志 http://www.linuxidc.com/Linux/2014-07/104686.htm
--------------------------------------分割线 --------------------------------------