如何部署linux服务器,CRAP-API——如何在Linux服务器部署CRAP-API教程

标签:trade   使用   format   ade   cer   art   files   朋友   linux

前言

之前一直用的eolinker的免费版,但是人数有限,所以想找个免费开源的API管理平台,然后就选择了CRAP-API。

步骤

部署环境

LNMT部署

我的环境是之前部署的是LNMP,后面又增加的JDK和Tomcat没部署的朋友可以使用oneinstack一键自动部署来安装好。

Maven部署

Maven部署 | 其实正常来说,直接下载编译好的安装包更改下数据库配置就阔以了,但是我当时用NGINX忘记将静态资源跳转,一直加载不到静态资源,所以克隆了源码,用Maven重新又打了包。

创建虚拟主机

# cd oneinstack

# ./vhost.sh?

#######################################################################

#? ? ? ?OneinStack for CentOS/RedHat 6 Debian 8 and Ubuntu 14 ? ? ? #

#? ? ? ?For more information please visit https://oneinstack.com? ? ? #

#######################################################################

Please choose to use environment:

? ? ? ? 1. Use php

? ? ? ? 2. Use java

Please input a number:(Default 1 press Enter) 1

What Are You Doing?

? ? ? ? 1. Use HTTP Only

? ? ? ? 2. Use your own SSL Certificate and Key

? ? ? ? 3. Use Let's Encrypt to Create SSL Certificate and Key

? ? ? ? q. Exit

Please input the correct option: 3

Please input domain(example: www.example.com):

domain=

Please input the directory for the domain: :

(Default directory: /data/wwwroot/):?

Virtual Host Directory=/data/wwwroot/

Create Virtul Host directory......

set permissions of Virtual Host directory......

Do you want to add more domain name? [y/n]: n

Do you want to redirect all HTTP requests to HTTPS? [y/n]: n

[2019年 10月 16日 星期三 09:27:58 CST] Single domain=''

[2019年 10月 16日 星期三 09:27:58 CST] Getting domain auth token for each domain

[2019年 10月 16日 星期三 09:27:58 CST] Getting webroot for domain=''

[2019年 10月 16日 星期三 09:27:58 CST] Getting new-authz for domain=''

[2019年 10月 16日 星期三 09:28:00 CST] The new-authz request is ok.

[2019年 10月 16日 星期三 09:28:00 CST] Verifying:

[2019年 10月 16日 星期三 09:28:05 CST] Pending

[2019年 10月 16日 星期三 09:28:08 CST] Pending

[2019年 10月 16日 星期三 09:28:10 CST] Pending

[2019年 10月 16日 星期三 09:28:13 CST] Pending

[2019年 10月 16日 星期三 09:28:16 CST] Pending

[2019年 10月 16日 星期三 09:28:19 CST] Pending

[2019年 10月 16日 星期三 09:28:22 CST] Success

[2019年 10月 16日 星期三 09:28:22 CST] Verify finished, start to sign.

[2019年 10月 16日 星期三 09:28:24 CST] Cert success.

-----BEGIN CERTIFICATE-----

xxxxxxxxxxxxxxxx

-----END CERTIFICATE-----

[2019年 10月 16日 星期三 09:28:24 CST] Your cert is in? /root/.acme.sh//.cer?

[2019年 10月 16日 星期三 09:28:24 CST] Your cert key is in? /root/.acme.sh//.key?

[2019年 10月 16日 星期三 09:28:25 CST] The intermediate CA cert is in? /root/.acme.sh//ca.cer?

[2019年 10月 16日 星期三 09:28:25 CST] And the full chain certs is there:? /root/.acme.sh//fullchain.cer?

Do you want to add hotlink protection? [y/n]: n

Allow Rewrite rule? [y/n]: n

Allow Nginx/Tengine/OpenResty access_log? [y/n]: y

You access log file=/data/wwwlogs/_nginx.log

nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok

nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful

Reload Nginx......

#######################################################################

#? ? ? ?OneinStack for CentOS/RedHat 6 Debian 8 and Ubuntu 14 ? ? ? #

#? ? ? ?For more information please visit https://oneinstack.com? ? ? #

#######################################################################

Your domain:? ? ? ? ? ? ? ? ?

Virtualhost conf:? ? ? ? ? ? ?/usr/local/nginx/conf/vhost/.conf

Directory of:? ? ? ? ? ? ? ? ?/data/wwwroot/

Let's Encrypt SSL Certificate:/usr/local/nginx/conf/ssl/.crt

SSL Private Key:? ? ? ? ? ? ? /usr/local/nginx/conf/ssl/.key

修改NGINX配置

注意静态资源的跳转不要忘记了!!!不要忘记了!!!不要忘记了!!!我就掉在这个坑里过...修改完成后,重新载入下配置文件。

# cd /usr/local/nginx/conf/vhost/

# vi .conf

server {

listen 80;

listen 443 ssl http2;

ssl_certificate /usr/local/nginx/conf/ssl/xxxxx.crt;

ssl_certificate_key /usr/local/nginx/conf/ssl/xxxxx.key;

ssl_protocols TLSv1 TLSv1.1 TLSv1.2 TLSv1.3;

ssl_ciphers TLS13-AES-256-GCM-SHA384:TLS13-CHACHA20-POLY1305-SHA256:TLS13-AES-128-GCM-SHA256:TLS13-AES-128-CCM-8-SHA256:TLS13-AES-128-CCM-SHA256:EECDH CHACHA20:EECDH AES128:RSA AES128:EECDH AES256:RSA AES256:EECDH 3DES:RSA 3DES:!MD5;

ssl_prefer_server_ciphers on;

ssl_session_timeout 10m;

ssl_session_cache builtin:1000 shared:SSL:10m;

ssl_buffer_size 1400;

add_header Strict-Transport-Security max-age=15768000;

ssl_stapling on;

ssl_stapling_verify on;

server_name xxxx;

access_log /data/wwwlogs/xxxxxx_nginx.log combined;

index index.html index.htm index.jsp;

root /data/wwwroot/xxxxx/;

#error_page 404 /404.html;

#error_page 502 /502.html;

location / {

proxy_set_header Host $host:80;

proxy_set_header X-Real-IP $remote_addr;

proxy_set_header x-forwarded-for $remote_addr;

proxy_pass http://127.0.0.1:8080;

}

location ~ [^/].php(/|$) {

# comment try_files $uri =404; to enable pathinfo

try_files $uri =404;

fastcgi_pass unix:/tmp/php-cgi.sock;

fastcgi_index index.php;

include fastcgi.conf;

#include pathinfo.conf;

}

location ~ .*.(gif|jpg|jpeg|png|bmp|swf)$ {

proxy_pass http://127.0.0.1:8080;

expires 30d;

}

location ~ .*.(js|css)?$ {

proxy_pass http://127.0.0.1:8080;

expires 12h;

}

}

# service nginx reload

下载CRAP

CRAP历史版本源码|安装包下载 | 我这边部署的时候,使用的是最新的包v8.1.5版本的,这边推荐直接下载编译好的包,并通过远程工具SCRT上传到服务器上。

如何部署linux服务器,CRAP-API——如何在Linux服务器部署CRAP-API教程_第1张图片

创建数据库

解压压缩文件

# unzip CrapApi.v8.1.5.zip

如何部署linux服务器,CRAP-API——如何在Linux服务器部署CRAP-API教程_第2张图片

查看SQL文件

这是便于后面方便直接导入sql文件。

# cd CrapApi.v8.1.5

# ll

总用量 120

-rw-r--r-- 1 root root 112251 10月 26 16:52 2019-10-26.V8.1.5.sql

drwxr-xr-x 5 root root 4096 10月 26 16:56 api

-rw-r--r-- 1 root root 583 2月 17 2019 readme.txt

# pwd

/root/CrapApi.v8.1.5/CrapApi.v8.1.5

# mv 2019-10-26.V8.1.5.sql api.sql

# ll

总用量 120

drwxr-xr-x 5 root root 4096 10月 26 16:56 api

-rw-r--r-- 1 root root 112251 10月 26 16:52 api.sql

-rw-r--r-- 1 root root 583 2月 17 2019 readme.txt

如何部署linux服务器,CRAP-API——如何在Linux服务器部署CRAP-API教程_第3张图片

建库并导入SQL文件

# mysql -uroot -p

Enter password:

Welcome to the MySQL monitor. Commands end with ; or g.

Your MySQL connection id is 150536

Server version: 5.6.42-log MySQL Community Server (GPL)

Copyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its

affiliates. Other names may be trademarks of their respective

owners.

Type 'help;' or 'h' for help. Type 'c' to clear the current input statement.

MySQL [(none)]> create database api_test;

Query OK, 1 row affected (0.00 sec)

MySQL [(none)]> use api_test;

Database changed

MySQL [api_test]> source /root/CrapApi.v8.1.5/CrapApi.v8.1.5/api.sql

Query OK, 0 rows affected (0.00 sec)

:

:

:

Query OK, 0 rows affected (0.00 sec)

MySQL [api_test]>

修改CRAP-API配置

这里只修改了数据的配置文件config.properties,日志的未做修改。

# cd api/WEB-INF/classes/

# vi config.properties

如何部署linux服务器,CRAP-API——如何在Linux服务器部署CRAP-API教程_第4张图片

配置Tomcat

删除webapps下的所有文件

# cd /usr/local/tomcat/webapps/

# rm -rvf *

修改编译包名

# cd /root/CrapApi.v8.1.5/CrapApi.v8.1.5

# mv api ROOT

# ll

总用量 120

-rw-r--r-- 1 root root 112251 10月 26 16:52 api.sql

-rw-r--r-- 1 root root 583 2月 17 2019 readme.txt

drwxr-xr-x 5 root root 4096 10月 26 16:56 ROOT

移包并启动服务

# cd CrapApi.v8.1.5/CrapApi.v8.1.5/

# cp -rvf ROOT/ /usr/local/tomcat/webapps/

# cd /usr/local/tomcat/bin/

# ./ startup.sh

访问页面

如何部署linux服务器,CRAP-API——如何在Linux服务器部署CRAP-API教程_第5张图片

CRAP-API——如何在Linux服务器部署CRAP-API教程

标签:trade   使用   format   ade   cer   art   files   朋友   linux

你可能感兴趣的:(如何部署linux服务器)