Join 4,000+ others and never miss out on new tips, tutorials, and more.
pecl install openswoole-22.0.0 | composer require openswoole/core:22.1.2
You can use mkcert to generate SSL certificate and setup CA at your local development environment.
mkcert -install # Created a new local CA 💥 # The local CA is now installed in the system trust store! ⚡️ # The local CA is now installed in the Firefox trust store (requires browser restart)! 🦊 mkcert example.com "*.example.com" example.test localhost 127.0.0.1 ::1 #Created a new certificate valid for the following names 📜 # - "example.com" # - "*.example.com" # - "example.test" # - "localhost" # - "127.0.0.1" # - "::1" # The certificate is at "./example.com+5.pem" and the key at "./example.com+5-key.pem" ✅
You can enable SSL for HTTP, HTTP2 or WebSocket server with the following settings:
<?php $server->set([ 'ssl_cert_file' => __DIR__ . '/config/example.com+5.pem', 'ssl_key_file' => __DIR__ . '/config/example.com+5-key.pem' ]);
You an find other SSL configrations at Open Swoole Server Configuration.
You have to pass
OpenSwoole\Constant::SSL when defining a Open Swoole server to enable SSL:
use OpenSwoole\Server; use OpenSwoole\Constant; $server = new Server("0.0.0.0", 9501, Server::PROCESS, Constant::SOCK_TCP | Constant::SSL);