3.6 万 Star!一个跨平台快速的轻量级 Web 服务器
Posted 伯乐在线
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了3.6 万 Star!一个跨平台快速的轻量级 Web 服务器相关的知识,希望对你有一定的参考价值。
【导语】:用 Go 编写的轻量级 Web 服务器。
简介Caddy 是用 Go 编写的轻量级 Web 服务器,是一个可扩展的服务器平台。
它相较于 Apache、nginx 这些知名 Web 服务器,特点在于提供了编译好的可执行文件,实现了真正的开箱即用。无需任何配置即可拥有免费的 HTTPS、自动把 Markdown 文件转化成 html 等人性化的功能。如果是搭建中小型的 Web 服务,它完全够用而且省时省心。
功能特点:
项目地址是:
https://github.com/caddyserver/caddy
下载安装Debian,Ubuntu,树莓派
使用以下命令安装会自动创建名为 caddy 的系统服务:
sudo apt install -y debian-keyring debian-archive-keyring apt-transport-https
curl -1sLf \'https://dl.cloudsmith.io/public/caddy/stable/gpg.key\' | sudo tee /etc/apt/trusted.gpg.d/caddy-stable.asc
curl -1sLf \'https://dl.cloudsmith.io/public/caddy/stable/debian.deb.txt\' | sudo tee /etc/apt/sources.list.d/caddy-stable.list
sudo apt update
sudo apt install caddy
Fedora,RedHat,Centos
Fedora 或 RHEL/CentOS 8 使用以下命令:
dnf install \'dnf-command(copr)\'
dnf copr enable @caddy/caddy
dnf install caddy
RHEL/CentOS 7 使用以下命令:
yum install yum-plugin-copr
yum copr enable @caddy/caddy
yum install caddy
Docker
docker pull caddy
Homebrew
brew install caddy
快速开始API 入门
首先启动 Caddy,此时 Caddy 处于空闲状态,默认配置为空:
caddy start
我们可以通过 API 动态为其添加配置:
curl localhost:2019/load \\
-X POST \\
-H "Content-Type: application/json" \\
-d @- << EOF
"apps":
"http":
"servers":
"hello":
"listen": [":2015"],
"routes": [
"handle": [
"handler": "static_response",
"body": "Hello, world!"
]
]
EOF
或者将以上配置的信息保存到 json 文件中:
curl localhost:2019/load \\
-X POST \\
-H "Content-Type: application/json" \\
-d @caddy.json
访问一下服务器:
curl localhost:2015
Hello, world!
使用 Caddyfile
Caddyfile 配置如下:
localhost
respond "Hello, world!"
localhost:2016
respond "Goodbye, world!"
调用 API 进行更新读取:
curl localhost:2019/load \\
-X POST \\
-H "Content-Type: text/caddyfile" \\
--data-binary @Caddyfile
访问一下服务器:
curl https://localhost
Hello, world!
curl https://localhost:2016
Goodbye, world!
Caddyfile 的样例如下:
静态文件
把静态文件放到需要关联的文件夹中,通过 Caddy 进行发布有两种方式:
caddy file-server
# 或者指定端口
caddy file-server --listen :2015
# 如果没有索引文件但是想显示文件列表,使用 --browse 选项
caddy file-server --browse
# 可以使用另一个文件夹作为站点根目录
caddy file-server --root ~/mysite
反向代理
假设有一个后端 HTTP 服务部署到 127.0.0.1:9000,创建反向代理执行以下命令:
caddy reverse-proxy --to 127.0.0.1:9000
或者使用 Caddyfile 进行配置:
:2016
reverse_proxy 127.0.0.1:9000
更新 Caddyfile 后要生效需 reload 或者 重新启动 Caddy。
- EOF -
1、很佩服的一个Google大佬,离职了……
2、年终奖多发 1 块,税后反而少 3W?
3、微软开年就出大 bug,大量程序员连夜加班
伯乐在线
分享IT互联网职场和精选干货文章(原域名已不再维护)。组织维护10万+star的开源技术资源库,包括:Python, Java, C/C++, Go, JS, CSS, Node.js, php, .NET 等。
回复 资源 获取10万+star开源资源
java快速开发平台(框架)
关于IT榻榻米项目介绍
官网地址:http://www.itttm.com
前言:IT榻榻米的名称由来呢?
我希望开发项目可以结构化的,轻量级的,就像榻榻米装修一样的简约风格,通过它可以快速迭代一个项目。
1:什么是IT榻榻米?
答:IT榻榻米是一款java轻量级智能快速开发平台(框架),可以帮助您解决项目中90%的重复工作,让您更多关注业务逻辑。由于本身轻量级特性,可根据自身需求二次开发想要的功能。
IT榻榻米可以让开发者更加专注实现项目的业务逻辑。项目本身集成了“一键代码生成器”,实现了一个单表所有的CRUD功能以及查询功能,只需要一分钟copy代码到项目即可。
2: IT榻榻米适合哪些用户群体?
答:IT榻榻米java快速开发平台适合,开发java从业者,有一部分其他语言基础的想要学习java的朋友,适合有一定经验的站长。
3: IT榻榻米可以帮助我什么?
答:由于本身特点轻量级,所以可以让开发者快速二次开发各种系统,如:OA,CMS,等等定制开发的系统 。也可以帮助从事其他语言开发的开发者快速学习掌握java开发的流程。
4: IT榻榻米使用的一些技术有哪些?
答:目前IT榻榻米采用了主流的 springboot ,apache shiro,apache maven,mysql,bootsrap 等等最新技术 。
5: IT榻榻米都有哪些功能?
答:本项目目前实现了 后台管理的基本功能,如:用户管理,角色管理,权限管理,菜单管理,细粒度的权限拦截,基于多视图的前端模版引擎,如springboot 推荐的thymeleaf 以及大家熟悉的 freemaker ,系统还集成了支付宝支付功能,也集成了微信开发,并且整合了文件上传,以及各种公用组件等等功能,这里不一一细说 。
以上是关于3.6 万 Star!一个跨平台快速的轻量级 Web 服务器的主要内容,如果未能解决你的问题,请参考以下文章