laradock이 swoole을 설치하지 못하면 어떻게 해야 하나요?
Laradock에서 swoole을 사용하는 방법
먼저 laradock의 .env 파일에서 WORKSPACE_INSTALL_SWOOLE=true를 수정해야 합니다
가상 머신을 다시 빌드하세요
docker-compose build workspace`
다시 빌드하세요. 그런 다음
docker-compose restart workspace
Enter를 시작하세요. 확인해보세요
docker-compose exec workspace bash php -m | grep swoole,
swoole이 인쇄되면 설치가 성공한 것입니다
다음으로 nginx 구성 파일을 수정해야 합니다
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; } }
이 구성 파일은 공식 문서를 참조하며, 여기에는 매우 중요한 위치가 있는데, 이는 업스트림 서버 작업 공간:1215를 수정하는 것입니다. Nginx는 laravel 환경과 다른 시스템에서 실행되므로 여기서 upsteam을 수정해야 합니다. 그렇지 않으면 502가 발생합니다.
다음으로 laravel 프로젝트에 들어가서 laravel-swoole을 설치합니다.
composer require swooletw/laravel-swoole php artisan vendor:publish --tag=laravel-swoole
그런 다음 laravel-swoole이 데몬 시작이 되고 swoole 에이전트를 지정하도록 laravel의 .env 파일을 수정할 수 있습니다. 호스트는 수정하지 않았습니다.
SWOOLE_HTTP_HOST=workspace SWOOLE_HTTP_DAEMONIZE=true SWOOLE_HOT_RELOAD_ENABLE=true
port 기본값은 1215입니다. 필요한 경우 nginx를 수정하는 것을 잊지 마세요.
Start swoole
php artisan swoole:http start | stop | restart | resload
웹페이지 오픈시 호스트를 변경해서 맞춤 도메인 이름을 사용했습니다. 오픈 후 웰컴페이지가 보이신다면
축하드립니다. 또한 swoole을 시작한 후 성능이 느려지는 경우 일부 매개변수 조정을 수행해야 합니다. 자세한 내용은 공식 문서 swoole을 참조하세요. 이에 대해서는 여기서 논의하지 않습니다.
개발 환경 핫 업데이트
swoole_http
san swoole:http start | stop | restart | resload에서 max_request = 1로 조정하세요.
위 내용은 laradock이 swoole을 설치하지 못하면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!