如何在PHP中使用 Caddy2 协同服务
2024-02-04 09:01:37 软件 200观看
摘要Caddy Server 是一个模块化的现代Web服务器平台,支持自动HTTPS证书,QUIC和HTTP/2,Zstd和Brotli压缩,以及各种现代功能以及经典的Web服务器功能,如可配置的虚拟主机,URL重写和重定向,反向复制等。本文介绍了如何将PHP与Caddy

Caddy Server 是一个模块化的现代Web服务器平台,支持自动HTTPS证书,QUIC和HTTP/2,Zstd和Brotli压缩,以及各种现代功能以及经典的Web服务器功能,如可配置的虚拟主机,URL重写和重定向,反向复制等。Tc128资讯网——每日最新资讯28at.com

本文介绍了如何将PHP与Caddy Web服务器版本2系列集成,以及高级配置。它还将类似的配置与Apache和Nginx配置进行了比较,以简化从Apache和Nginx到Caddy的迁移。Tc128资讯网——每日最新资讯28at.com

Caddy

安装

官方安装文档:https://caddyserver.com/docs/installTc128资讯网——每日最新资讯28at.com

sudo apt install -y debian-keyring debian-archive-keyring apt-transport-https curlcurl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/gpg.key' | sudo gpg --dearmor -o /usr/share/keyrings/caddy-stable-archive-keyring.gpgcurl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/debian.deb.txt' | sudo tee /etc/apt/sources.list.d/caddy-stable.listsudo apt updatesudo apt install caddy

确认服务已启动

图片图片Tc128资讯网——每日最新资讯28at.com

服务命令

systemctl start caddycaddy startcaddy run # Starts server and blocks indefinitelysystemctl stop caddycaddy stopsystemctl reload caddycaddy reloadsystemctl restart caddycaddy stop && caddy start

启动Caddy服务并使其在系统引导时自动启动Tc128资讯网——每日最新资讯28at.com

sudo systemctl daemon-reloadsudo systemctl start caddy.servicesudo systemctl enable caddy.service

配置

Caddy可以在许多操作系统和基于Linux的发行版上使用。Caddy文档解释了如何安装Caddy,并将其配置为随服务器启动自动运行的服务/守护程序。Tc128资讯网——每日最新资讯28at.com

Caddy Server配备了安全和高性能的默认配置,这使得它很容易配置最小的配置。Tc128资讯网——每日最新资讯28at.com

当Caddy安装并配置为系统服务时,默认的 /etc/caddy/Caddyfile 可以用作全局配置文件,并使用建议名称 /etc/caddy/conf 的子目录来包含各个站点的配置文件,类似于Apache和Nginx配置。Tc128资讯网——每日最新资讯28at.com

/etc/caddy  ├── Caddyfile  └── conf/        └── caddy.tinywan.com.conf

主次配置调整

主配置:/etc/caddy/CaddyfileTc128资讯网——每日最新资讯28at.com

{    log default {       format console       output file /var/log/caddy/system.log       exclude http.log.access    }}import conf/*

次配置目录:/etc/caddy/Caddyfile/conf。以后就可以在这个目录下新增多个站点配置了,是不是和Nginx看起来一样喽!Tc128资讯网——每日最新资讯28at.com

例如:caddy.tinywan.com.confTc128资讯网——每日最新资讯28at.com

caddy.tinywan.com {    # Set this path to your site's directory.    root * /home/www/website/caddy    # Enable the static file server.    file_server}

应用

静态网站托管

配置文件

caddy.tinywan.com {        # Set this path to your site's directory.        root * /home/www/website/caddy        # Enable the static file server.        file_server}

访问域名:https://caddy.tinywan.com/

官方默认页面Tc128资讯网——每日最新资讯28at.com

图片图片Tc128资讯网——每日最新资讯28at.com

自定义页面Tc128资讯网——每日最新资讯28at.com

<!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8">    <title>开源技术小栈Caddy2</title></head><body><h1>2024 开源技术小栈Caddy2入门教程,专注于互联网技术分享</h1></body></html>

图片图片Tc128资讯网——每日最新资讯28at.com

反向代理

proxy-caddy.tinywan.com {  reverse_proxy localhost:6140}

HTTP 重定向添加 www. 子域名

tinywan.com {  redir https://www.{host}{uri}}www.tinywan.com {    # Set this path to your site's directory.    root * /home/www/website/full-stack/dist    # Enable the static file server.    file_server}

访问域名 tinywan.com 会被重定向到 https://www.tinywan.com/Tc128资讯网——每日最新资讯28at.com

PHP-FPM 集成

与Apache Web服务器和Nginx与PHP集成的方式类似,Caddy也使用Caddy的FastCGI反向代理与PHP集成。Tc128资讯网——每日最新资讯28at.com

其基本思想是,当Caddy接收到一个应该用PHP处理的请求(例如,一个对带有 .php 扩展名的文件名的请求)时,请求被发送到PHP-FPM,在那里执行PHP应用程序,响应被发送回Caddy以返回给用户。Tc128资讯网——每日最新资讯28at.com

异常 502 Bad Gateway 错误日志Tc128资讯网——每日最新资讯28at.com

2024/02/02 09:42:36.814 ERROR http.log.error dialing backend: dial unix /var/run/php8.0.7-fpm.sock: connect: permission denied

修改用户组Tc128资讯网——每日最新资讯28at.com

sudo vim /lib/systemd/system/caddy.service

修改前Tc128资讯网——每日最新资讯28at.com

User=caddyGroup=caddy

修改后Tc128资讯网——每日最新资讯28at.com

User=wwwGroup=www

完整配置Tc128资讯网——每日最新资讯28at.com

caddy-php.tinywan.com {      # Resolve the root directory for the app    root * /home/www/website/demo/public    # Allow caddy to serve static files    file_server    # Encode responses in zstd or gzip, depending on the    # availability indicated by the browser.    encode gzip    # Configures multiple PHP-related settings    php_fastcgi unix//var/run/php8.0.7-fpm.sock}

目录 /home/www/website/demo/public 新建文件index.phpTc128资讯网——每日最新资讯28at.com

<?phpecho "Hello 开源技术小栈";

访问地址:https://caddy-php.tinywan.com/,该域名需要提前解析好哦!Tc128资讯网——每日最新资讯28at.com

图片图片Tc128资讯网——每日最新资讯28at.com

Tc128资讯网——每日最新资讯28at.com

本文链接:http://www.28at.com/showinfo-26-72431-0.html如何在PHP中使用 Caddy2 协同服务

声明:本网页内容旨在传播知识,不代表本站观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。

显示全文

上一篇:什么是数据同步利器DataX,如何使用?

下一篇:容器下在 Triton Server 中使用 TensorRT-LLM 进行推理

最新热点