特码的,谷歌又用不了了。

吐槽完毕,正文如下:

caddy是一个用go语言开发的服务器,可用作web端。

caddy本身支持 -conf caddyfile的配置

在命令行中的体现: caddy -conf caddyfile

caddy是自定义的命令别名,-conf参数代表是对命令行中配置文件的读取,caddyfile就是配置文件。

其中caddyfile是文件名,这个名字的定义,自己就随意了。

fastcgi path endpoint [preset] {

  root directory

  ext extension

  split splitval

  index indexfile

  env key value

  except ignored_paths...

  pool pool_size

  upstream endpoint

  connect_timeout duration

  read_timeout duration

  send_timeout duration

}

  • 路径(path是在请求转发之前匹配的基本路径。
  • 端点(endpoint是FastCGI服务器的地址或Unix套接字。
  • 预设(preset是可选的预设名称(见下文)。使用预设时,不需要重复预设的各个设置。
  • root指定FastCGI服务器使用的根目录,如果与虚拟主机的根目录不同。如果FastCGI服务器位于不同的服务器,chroot-jailed和/或containerized上,这是有用的。
  • ext指定扩展名,如果请求URL具有该扩展名,则会将请求代理到FastCGI。
  • split指定如何拆分URL; 分割值成为第一部分的结尾,并且URL中的任何内容成为PATH_INFO CGI变量的一部分。
  • index指定文件未由URL指定时要尝试的默认文件。
  • env设置一个带有给定值的名为key的环境变量; 在 ENV属性可多次使用和值可以使用请求的占位符
  • except是fastcgi处理以外的空格分隔的请求路径的列表,即使它与基本路径匹配。
  • pool是要重用的持久连接的数量(可以在Windows上的性能很好); 默认值为0。
  • upstream指定要使用的附加后端。将执行基本负载平衡。这可以多次指定。
  • connect_timeout是连接到后端的时间。必须是持续时间值(例如“10s”)。
  • read_timeout是从后端读取响应的时间。必须是持续时间值。
  • send_timeout是允许向后端发送请求的时间。必须是持续时间值。

其中关于端点, endpoint这个东西的配置,官网上的示例为:

fastcgi / 127.0.0.1:9001 {

}

其中的127.0.0.1:9001这个就是endpoint中说的 FastCGI服务器的地址 同时,它只是第一种方法,或:后面还有 Unix套接字, 我使用的是ubuntu,其次环境搭建的是lnmp,我有现成的php-fpm,在php的文件:php/etc/php-fpm.conf(这只是个在php5.4.45中,具体得看自己的机器),监听的是socket文件为:php-cgi.sock,也就是unix的套接字

但是网上的配置文件多为安装好php后复制一份,然后进行配置,该工程坚挺服务器地址。。。话说我只是研究go语言和服务器啊喂,这个搞那么复杂感冒啊喂。

所以将上面的例子改动成

fastcgi / /youPath/php-cgi.sock php {

}

就可以了,服务器就可以解析php了。

caddy配置php-fpm的更多相关文章

  1. Web服务器和动态语言如何交互--CGI&FastCGI&FPM浅谈

    一个用户的Request是如何经过Web服务器(Apache,Nginx,IIS,Light)与后端的动态语言(如PHP等)进行交互并将结果返回给用户的呢? 本文浅谈个人观点,可能有误,欢迎拍砖,共同 ...

  2. 基于LNMP(fastcgi协议)环境部署、原理介绍以及fastcgi_cache配置以及upstream模块负载均衡讲解

    ngx_http_proxy_module只能反向代理后端使用HTTP协议的主机.而ngx_http_fastcgi_module只能反向代理后端使用FPM或者使用FastCGI协议的客户端. 一.部 ...

  3. Caddy – 方便够用的 HTTPS server 新手教程

    最近发现了一个 golang 开发的 HTTP server,叫做 Caddy,它配置起来十分简便,甚至可以 28 秒配置好一个支持 http2 的 server ,而且对各种 http 新特性都支持 ...

  4. PHP 服务 php-fpm 的一些常见配置

    < 操作系统 Centos7,PHP版本7.2.7 > 已下所有配置涉及到时间单位均使用 => 秒(s) 分 (m) 时 (h) 天(d) [ 以下为全局配置 ] 01,关于,进程文 ...

  5. 深入理解PHP之:Nginx 与 FPM 的工作机制

    网络上有很多关于如何配置 Nginx + FPM 的文章,但它们更多从操作的角度出发,告诉我们怎么做,但却没有告诉我们为什么要这么做,本文从 Nginx 与 FPM 的工作机制出发,探讨配置背后的原理 ...

  6. PHP配置优化:php-fpm配置解读

    PHP-FPM是一个PHP FastCGI管理器,php-fpm.conf配置文件用于控制PHP-FPM管理进程的相关参数,比如工作子进程的数量.运行权限.监听端口.慢请求等等. 我们在编译安装PHP ...

  7. caddy(四)Run详解

    caddy(四)Run详解 前言 平时我们使用 caddy 都是使用 它的 二进制 分发文件,我们现在来分析 caddy 的 Run 函数.从最外层抽象的看它都做了些什么. Caddy Run 我们来 ...

  8. [视频教程] 灵活配置多版本PHP并存运行

    经常有一些项目需要使用不同版本的PHP运行环境,比如有的老项目需要使用5.3版本,有的新项目比如laravel需要使用7.2以上版本,那么在一台机器上如何多版本PHP并存运行呢 有一种很灵活高效的方式 ...

  9. 落网数据库简单查询接口 caddy+php7+mongodb

    落网数据库简单查询接口 一个简单的DEMO,使用了caddy + php7 + mongodb 数据库&接口设计 来自 https://github.com/Aedron/Luoo.spide ...

随机推荐

  1. windows找不到文件gpedit.msc处理方法

    新建一个txt,输入 @echo offpushd "%~dp0"dir /b C:\Windows\servicing\Packages\Microsoft-Windows-Gr ...

  2. Codeforces 1329C - Drazil Likes Heap(堆+贪心)

    题目链接 题意 给出一个高度为 h 的大根堆, 要求弹出其中若干个数后高度变为 g, 并且前后大根堆都是满二叉树. 问新的大根堆所有数之和的最小值, 并要给出一种弹出数的操作序列(节点序号). h, ...

  3. 基于.NetCore3.1搭建项目系列 —— 使用Swagger导出文档 (番外篇)

    前言 回顾之前的两篇Swagger做Api接口文档,我们大体上学会了如何在net core3.1的项目基础上,搭建一套自动生产API接口说明文档的框架. 本来在Swagger的基础上,前后端开发人员在 ...

  4. VMware pro 15.5安装教程

    一,安装 1.VMware pro 15.5 下载地址:https://www.vmware.com/cn/products/workstation-pro/workstation-pro-evalu ...

  5. SpringCloud入门(八): Zuul 过滤器详解

    Zuul 过滤器 zuul 有四种过滤器类型,分别是: 1.Pre:过滤器在请求被路由之前调用.我们可利用这种过滤器实现身份验证.在集群中选择请求的微服务.记录调试信息等: 2.Routing:过滤器 ...

  6. D - D 分糖果HDU - 1059(完全背包+二进制优化)

    有两个小朋友想要平分一大堆糖果,但他们不知道如何平分需要你的帮助,由于没有spj我们只需回答能否平分即可. 糖果大小有6种分别是1.2.3.4.5.6,每种若干颗,现在需要知道能不能将这些糖果分成等额 ...

  7. A - A FZU - 2205

    A - A FZU - 2205 一个国家有 N 个城市,国王不希望国家中存在三个城市之间能够互相直接到达,但道路要求尽可能的多,道路是双向边,且无重边无自环. 国王希望你最好能解决这个问题.求最多存 ...

  8. uCOS-II简介及移植uCOS-II到STM32F103平台详细步骤

    1.参考博客:https://blog.csdn.net/wang328452854/article/details/78486458 2.uCOS(也有人叫uC/OS)由美国人 Jean Labro ...

  9. python:爬取博主的所有文章的链接、标题和内容

    以爬取我自己的博客为例:https://www.cnblogs.com/Mr-choa/ 1.获取所有的文章的链接: 博客文章总共占两页,比如打开第一页:https://www.cnblogs.com ...

  10. JavaScript-原始值和引用值

    一.原始值和引用值的概念 在 ECMAScript 中,变量可以存在两种类型的值,即原始值和引用值. 1.1 原始值 (1)原始值指的是 原始类型 的值,也叫 基本类型,例如 Number.Stirn ...