selfojled / php-caddy
适用于 Windows 的微型 PHP 开发环境
Requires
- php: >=5.5.9
- mnapoli/silly: ~1.0
- mnapoli/silly-php-di: ^1.1
- symfony/process: ~2.7|~3.0
- tightenco/collect: ^5.2
Requires (Dev)
- mockery/mockery: 0.9.*
- phpunit/phpunit: >=4.8.24
README
介绍
PHP Caddy 是一个 微型 的 PHP 开发环境,适用于 Windows,灵感来源于 Laravel Valet。
无需 hosts 文件,无需配置,无需烦恼。只需运行它,然后编写一些代码。
PHP Caddy 基本上是简化版的 Valet:没有 *.dev 域名代理(只有 localhost),不链接多个站点或已停用的目录,也不通过本地隧道共享。它也不像其他一些 Windows 替代方案那样需要提升权限运行,这可以使企业环境中的用户更容易使用。
PHP Caddy 是基于 Caddy 网络服务器构建的,还包括 Mailhog,用于捕获应用程序发送的电子邮件。
本软件包适用于简约主义者。它不包含 Valet 的完整功能集,也不提供像 Homestead 这样的虚拟化环境那样的强大功能。
- 如果您使用的是 macOS,您可能只需使用 Laravel Valet,因为它很棒。
- 如果您想要适用于 Windows 的更类似 Valet 的东西,请查看 valet-windows。
- 如果您想要一个完全虚拟化的 Linux 开发环境,请使用 Laravel Homestead。
- 如果您在 Windows 上,并且想要一个快速、易于使用、资源消耗最小的本地开发环境,请继续阅读!
要求
- PHP (推荐 7.1) (安装于 C:\php,并配置为 Laravel)
- Composer
- 如果需要,请安装数据库(MySql/Mariadb/Sqlite)
502 Bad Gateway
在 PHP 7.0 及更早版本中,Windows 上的长时间运行的 php-cgi.exe 进程似乎存在问题。进程会在一段时间后随机崩溃,导致 PHP Caddy 出现 502 Bad Gateway
。
PHP 7.1 引入了运行多个 php-cgi.exe 进程的能力,这似乎减轻了这个问题。
如果您频繁遇到 502 Bad Gateway
错误,请尝试升级到 PHP 7.1,并确保您运行的是最新的 PHP Caddy,方法是通过运行 composer global update
。
如果您不能升级 PHP,那么您可以使用 caddy service php restart
命令在出现这种情况时重新启动 PHP。
安装说明
composer global require samojled/php-caddy
使用方法
请确保您的全局 composer vendor/bin 文件夹已添加到系统路径中。
启动它
cd {your php project directory}
caddy start
- 当前目录将被链接
- 站点: https://
- Mailhog: https://:8025
- SMTP: 127.0.0.1:1025
关闭它
caddy stop
切换目录(为不同的项目提供服务)
cd {another php project}
caddy link
控制单个服务
# Mailhog
caddy service mailhog start
caddy service mailhog stop
caddy service mailhog restart
# Http (Caddy)
caddy service http start
caddy service http stop
caddy service http restart
# PHP
caddy service php start
caddy service php stop
caddy service php restart
可用命令
支持的框架和应用程序
PHP Caddy 与 Valet 具有相同的默认驱动程序集,因此开箱即支持
- Laravel
- Lumen
- Symfony
- Zend
- CakePHP 3
- WordPress
- Bedrock
- Craft
- Statamic
- Jigsaw
- 静态 HTML
自定义 Valet 驱动程序
您可以编写自己的 Valet 驱动程序来支持列表中未列出的 PHP 应用程序,就像使用 Laravel Valet 一样。
当您安装 PHP Caddy 时,会创建一个 ~/.phpcaddy/Drivers
目录,其中包含一个 SampleValetDriver.php
文件,您可以用作参考。要使用您自定义的驱动,可以将它放置在 ~/.phpcaddy/Drivers
目录中,或者放在您项目的根路径下,PHP Caddy 将会识别它。
有关创建自定义驱动的更多信息,请参阅 Laravel Valet 文档: 自定义 Valet 驱动
升级
您可以使用 composer global update
命令更新 PHP Caddy。升级后,您可能需要运行 caddy install
以进行必要的配置更改。
许可和归属
在构建此项目时,部分原始 Laravel Valet 源代码被整体或部分使用,并受原始 Valet 许可证的约束。
Caddy 和 Mailhog 二进制文件分别受其各自许可证的约束。
PHP Caddy 版权所有 (c) 2017 Dave Samojlenko,并受 MIT 许可证的许可。