Heim > Artikel > PHP-Framework > Was soll ich tun, wenn Laradock Swoole nicht installieren kann?
Was soll ich tun, wenn Laradock Swoole nicht installieren kann?
So verwenden Sie swoole in Laradock
Zuerst müssen wir WORKSPACE_INSTALL_SWOOLE=true unter der .env-Datei von Laradock ändern
Erstellen Sie die virtuelle Maschine neu
docker-compose build workspace`
Starten Sie nach dem Neuaufbau
docker-compose restart workspace
Geben Sie die virtuelle Maschine ein und prüfen Sie, ob die Installation erfolgreich ist
docker-compose exec workspace bash php -m | grep swoole,
Wenn Swoole gedruckt wird, ist es beweist, dass die Installation erfolgreich ist
Als nächstes müssen wir die Nginx-Konfigurationsdatei ändern
map $http_upgrade $connection_upgrade { default upgrade; '' close; } upstream laravels { # Connect IP:Port server workspace:1215 weight=5 max_fails=3 fail_timeout=30s; keepalive 16; } server { listen 80; # listen [::]:80 ipv6only=on; server_name yourdomain.com; root /var/www/swoole/public; index index.php index.html index.htm; error_log /var/www/swoole_error.log; location = /index.php { # Ensure that there is no such file named "not_exists" # in your "public" directory. try_files /not_exists @swoole; } location / { try_files $uri $uri/ @swoole; } location @swoole { set $suffix ""; if ($uri = /index.php) { set $suffix ?$query_string; } proxy_set_header Host $http_host; proxy_set_header Scheme $scheme; proxy_set_header SERVER_PORT $server_port; proxy_set_header REMOTE_ADDR $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection $connection_upgrade; # IF https # proxy_set_header HTTPS "on"; proxy_pass http://laravels$suffix; } location ~ /\.ht { deny all; } location /.well-known/acme-challenge/ { root /var/www/letsencrypt/; log_not_found off; } }
Diese Konfigurationsdatei bezieht sich auf das offizielle Dokument. Hier gibt es nur einen sehr wichtigen Punkt: Serverarbeitsbereich:1215. Da unser Nginx auf einer anderen Maschine als die Laravel-Umgebung läuft, müssen Sie hier den Upsteam ändern, sonst tritt 502 auf.
Als nächstes geben wir unser Laravel-Projekt ein und installieren laravel-swoole,
composer require swooletw/laravel-swoole php artisan vendor:publish --tag=laravel-swoole
Dann können wir als nächstes die .env-Datei von Laravel ändern, um Laravel-swoole zu einem Wächter zu machen. Der Prozessstart gibt auch den Host an des swoole-Agenten und des
SWOOLE_HTTP_HOST=workspace SWOOLE_HTTP_DAEMONIZE=true SWOOLE_HOT_RELOAD_ENABLE=true
-Ports. Der Standardwert ist 1215. Sie können ihn bei Bedarf selbst ändern.
Swoole starten
php artisan swoole:http start | stop | restart | resload
Ich habe beim Öffnen unserer Webseite den Host geändert und daher einen benutzerdefinierten Domainnamen verwendet. Nach dem Öffnen sehen Sie die Willkommensseite
Herzlichen Glückwunsch, gelungen. Wenn Sie außerdem feststellen, dass die Leistung nach dem Start von Swoole langsamer wird, müssen Sie einige Parameteroptimierungen durchführen. Weitere Informationen finden Sie im offiziellen Dokument von Swoole, das hier nicht besprochen wird.
Hot-Update der Entwicklungsumgebung
max_request = 1 in swoole_http anpassen
san swoole:http start | stop | restart | resload
Das obige ist der detaillierte Inhalt vonWas soll ich tun, wenn Laradock Swoole nicht installieren kann?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!