jstormes / ezauth2-server-skeleton
Zend expressive OAuth2 框架。几秒钟内开始开发带有 OAuth2 的 PSR-15 中间件应用程序!
Requires
- php: ^7.1
- jstormes/ezauth2: dev-master
- league/oauth2-client: ^2.3
- league/oauth2-server: *
- psr7-sessions/storageless: ^4.0
- zendframework/zend-component-installer: ^2.1.1
- zendframework/zend-config-aggregator: ^1.0
- zendframework/zend-diactoros: ^1.7.1 || ^2.0
- zendframework/zend-expressive: ^3.0.1
- zendframework/zend-expressive-helpers: ^5.0
- zendframework/zend-expressive-swoole: ^1.0
- zendframework/zend-stdlib: ^3.1
Requires (Dev)
- composer/composer: ^1.5
- elie29/zend-phpdi-config: ^3.0
- filp/whoops: ^2.1.12
- jsoumelidis/zend-sf-di-config: ^0.3
- mikey179/vfsstream: ^1.6.5
- northwoods/container: ^3.0
- phpstan/phpstan: ^0.9.2
- phpstan/phpstan-strict-rules: ^0.9.0
- phpunit/phpunit: ^7.0.1
- roave/security-advisories: dev-master
- squizlabs/php_codesniffer: ^2.9.1
- zendframework/zend-auradi-config: ^1.0
- zendframework/zend-coding-standard: ~1.0.0
- zendframework/zend-expressive-aurarouter: ^3.0
- zendframework/zend-expressive-fastroute: ^3.0
- zendframework/zend-expressive-platesrenderer: ^2.0
- zendframework/zend-expressive-tooling: ^1.0
- zendframework/zend-expressive-twigrenderer: ^2.0
- zendframework/zend-expressive-zendrouter: ^3.0
- zendframework/zend-expressive-zendviewrenderer: ^2.0
- zendframework/zend-pimple-config: ^1.0
- zendframework/zend-servicemanager: ^3.3
- zfcampus/zf-development-mode: ^3.1
This package is auto-updated.
Last update: 2024-09-08 07:14:41 UTC
README
几秒钟内开始开发带有 OAuth2 的 PSR-15 中间件应用程序!
ezauth2-server-skeleton 基于 zend-expressive 构建,基于 zend-stratigility,为 PHP 提供一个具有路由、DI 容器、可选模板和可选错误处理功能的极简 PSR-15 中间件框架。
此安装程序将根据以下截图所示的用户输入选择可选软件包,以设置基于 zend-expressive 的骨架应用程序
用户选择的软件包将保存到 composer.json
中,以便所有其他参与项目的人员都能安装相同的软件包。配置文件和模板已准备好供首次使用。设置成功后,将从 composer.json
中删除安装程序命令,并删除所有与安装程序相关的文件。
入门指南
使用 composer 启动您的 Expressive OAuth2 服务器项目
$ composer create-project jstormes/ezauth2-server-skeleton <project-path>
选择并安装您想要的软件包后,转到 <项目路径>
并启动 Swoole 内置的 web 服务器以验证安装
$ composer serve
然后您可以通过浏览到 https://ezauth2.loopback.world:8443 来访问。
Linux 用户
在 PHP 版本低于 7.1.14 和 7.2.2 的情况下,此命令可能无法按预期工作,因为 PHP 中存在一个仅影响 Linux 环境的错误。在这种情况下,您需要自己启动 内置的 web 服务器,使用以下命令
$ php public/index.php start
设置超时
Composer 命令在 300 秒(5 分钟)后超时。在基于 Linux 的系统上,由
composer serve
启动的php -S
命令作为后台进程继续运行,但在其他系统上,当发生超时时会停止。因此,我们建议使用超时运行
serve
脚本。这可以通过使用带有--timeout
选项的composer run
来执行serve
脚本来完成。当设置为0
时,如前一个示例所示,将不使用超时,它将一直运行,直到您取消进程(通常通过Ctrl-C
)。或者,您可以指定一个有限的超时;以下示例将超时扩展为整整一天$ composer run --timeout=86400 serve
故障排除
如果在 composer create-project
阶段安装程序失败,请在打开新问题之前先查看以下列表。我们迄今为止遇到的大多数问题都可以通过 self-update
和 clear-cache
解决。
- 确保通过运行
composer self-update
使用 composer 的最新版本。 - 尝试通过运行
composer clear-cache
清除 Composer 的缓存。
如果以上任一项都没有帮助,您可能面临更严重的问题
- 有关 zlib_decode 错误 的信息。
- 有关 composer 降级模式 的信息和解决方案。
应用程序开发模式工具
此骨架包含 zf-development-mode。它提供了一个 composer 脚本,允许您启用和禁用开发模式。
要启用开发模式
注意:不要在生产服务器上运行开发模式!
$ composer development-enable
注意: 启用开发模式还会清除您的配置缓存,以便安全地更新依赖项并确保应用程序能够接收到任何新的配置。
要禁用开发模式
$ composer development-disable
开发模式状态
$ composer development-status
配置缓存
默认情况下,框架会在 data/config-cache.php
创建一个配置缓存。在开发模式下,配置缓存被禁用,进入和退出开发模式将移除配置缓存。
如果您在生产部署时部署到同一目录,可能需要清除配置缓存。您可以使用以下方法完成此操作:
$ composer clear-config-cache
您还可以通过编辑 config/config.php
文件并更改本地 $cacheConfig
变量的 config_cache_path
条目来更改配置缓存的存储位置。
框架开发
本节仅适用于您使用 git clone
克隆了此存储库的情况,而不是使用 composer create-project ...
安装 expressive 的情况。
如果您想针对安装程序运行测试,您需要克隆此存储库并使用 composer 安装所有依赖项。请确保您使用 --no-scripts
选项 阻止 composer 运行脚本,否则它将删除安装程序和所有测试。
$ composer update --no-scripts
$ composer test
请注意,安装程序测试会在运行测试前后删除已安装的配置文件和模板。
在贡献之前,请阅读 贡献指南。
3.2.3