phasync / swerve
S(w)erve your long-running PHP applications from the CLI fast and efficiently.
dev-main
2024-07-13 01:00 UTC
Requires
- charm/http: ^2.0
- charm/terminal: ^1.1.5
- nyholm/psr7: ^1.8
- phasync/phasync: ^1.1.0-rc0
- phasync/server: ^1.0
- psr/http-message: ^1.0 | ^2.0
- psr/log: ^3.0
Requires (Dev)
- friendsofphp/php-cs-fixer: dev-master
- slim/psr7: ^1.7
- slim/slim: ^4.14
This package is auto-updated.
Last update: 2024-12-13 02:02:30 UTC
README
EARLY DEMO RELEASE, BUGS TO BE EXPECTED
Getting started
- Create a file named
swerve.php
in your application root. This file must return a PSR-15 RequestHandlerInterface. For example:
<?php use Psr\Http\Message\RequestInterface; use Psr\Http\Message\ResponseInterface; use Slim\Factory\AppFactory; $app = AppFactory::create(); $app->get('/', function (RequestInterface $request, ResponseInterface $response) { $response->getBody()->write('Hello, World'); return $response; }); return $app;
-
Install
swerve
:composer require phasync/swerve
-
Run
./vendor/bin/swerve
to launch the web server.
Usage
> ./vendor/bin/swerve --help [ SWERVE ] Swerving your website... >>> WARNING! THIS IS BETA SOFTWARE FOR PREVIEW ONLY <<< Usage: swerve [-mdhvq] [-w,--workers=<processes>] [--fastcgi=<ip:port>] [--http=<ip:port>] [--https=<ip:port>] [--log=<path>] [swerve.php] -m,--monitor Monitor source code and reload automatically -d Run as daemon -w,--workers=<processes> Number of worker processes (default: auto) --fastcgi=<ip:port> IP and port for FastCGI server --http=<ip:port> IP and port for HTTP server (default: 127.0.0.1:8080) --https=<ip:port> IP and port for HTTPS server --log=<path> Log errors to file -h,--help Display this help message -v,--verbose Increase logging verbosity, repeat for higher verbosity -q,--quiet Suppress all output [swerve.php] Full path to application php file