이 기사는 Laravel Octane 및 WebSocket의 nginx 구성을 주로 기록하면서 Laravel에 대한 관련 지식을 제공합니다. 관심 있는 분들은 아래를 살펴보시기 바랍니다.
laradock의 docker 설치, Laravel Octane 설치에 대해서는 여기서 자세히 설명하지 않겠습니다.
docker 安装laradock,和Laravel Octane的安装这里就不过多赘述了。
前情描述
在laradock
中安装好Laravel Octane后swoole启动,在nginx中配置端口访问连接失败, 报错提示502,配置如下:
location /octane { proxy_pass http://127.0.0.1:8080;}
原因:Swoole服务器在Workspace容器中运行;Nginx服务器在Nginx容器中运行,需要找到Workspace的ip并在nginx中配置。
解决方法
docker ps
查看Workspace容器的id。
docker inspect 容器id
,找到Networks
中的IPAddress
laradock
에 Laravel Octane을 설치한 후 swoole이 시작됩니다. nginx에서 포트 액세스 연결 구성이 실패하고 오류 메시지 502가 보고됩니다. map $http_upgrade $connection_upgrade { default upgrade; '' close;}
docker ps
Workspace 컨테이너의 ID를 봅니다. 🎜🎜🎜nginx 구성 파일을 수정합니다. 🎜upstream ws { server 172.22.0.4:9502 weight=5 max_fails=3 fail_timeout=30s;}
location /ws { set $suffix ""; if ($uri = /index.php) { set $suffix ?$query_string; } proxy_http_version 1.1; 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; proxy_pass http://ws$suffix;}
map $http_upgrade $connection_upgrade { default upgrade; '' close;}upstream ws { server 172.22.0.4:9502 weight=5 max_fails=3 fail_timeout=30s;}server { listen 80; listen [::]:80; server_name bbs.test; root /var/www/laravel/public; index index.php index.html index.htm; location / { try_files $uri $uri/ /index.php$is_args$args; } location ~ \.php$ { try_files $uri /index.php =404; fastcgi_pass php-upstream; fastcgi_index index.php; fastcgi_buffers 16 16k; fastcgi_buffer_size 32k; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; #fixes timeouts fastcgi_read_timeout 600; include fastcgi_params; } location ~ /\.ht { deny all; } location /.well-known/acme-challenge/ { root /var/www/letsencrypt/; log_not_found off; } location /ws { set $suffix ""; if ($uri = /index.php) { set $suffix ?$query_string; } proxy_http_version 1.1; 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; proxy_pass http://ws$suffix; } error_log /var/log/nginx/laravel_error.log; access_log /var/log/nginx/laravel_access.log;}
위 내용은 Laradock에서 Laravel Octane 및 WebSocket의 nginx 구성 공유의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!