如何解决Quasar 2本地Docker环境中Vite HMR WebSocket重定向循环问题
Quasar 2 + Docker + Caddy 环境下Vite HMR WebSocket连接失败问题
我创建了一个用于复现问题的仓库。
环境配置
docker-compose.yml 配置
version: "3.9" networks: web-network: services: caddy: image: caddy:latest restart: always volumes: - ./caddy/data:/data - ./caddy/config:/config - ./caddy/Caddyfile:/etc/caddy/Caddyfile - ./caddy/logs:/logs - ./app:/var/www/html ports: - "80:80" - "443:443" networks: - web-network # 这段配置让Docker中的Caddy能够访问外部(Docker外)笔记本本地监听的8080端口 extra_hosts: host.docker.internal: host-gateway php: build: ./php tty: true restart: always volumes: - ./app:/var/www/html # xdebug=3.0.4 supports php7.4 - ./php/conf.d/error_reporting.ini:/usr/local/etc/php/conf.d/error_reporting.ini - ./php/tmp:/tmp networks: - web-network extra_hosts: host.docker.internal: host-gateway mysql: image: mysql/mysql-server:8.0-aarch64 ports: - "23306:3306" environment: MYSQL_ROOT_HOST: "%" MYSQL_ROOT_USER: root MYSQL_ROOT_PASSWORD: root MYSQL_DATABASE: dev MYSQL_USER: dev MYSQL_PASSWORD: dev volumes: - $PWD/db/data:/var/lib/mysql networks: - web-network extra_hosts: host.docker.internal: host-gateway
Caddyfile 配置
fe.test.localhost { reverse_proxy host.docker.internal:8080 } be.test.localhost { root * /var/www/html/be/webroot encode gzip php_fastcgi php:9000 file_server }
错误信息
(anonymous) @ client.ts:22 client.ts:230 [vite] server connection lost. polling for restart... Navigated to https://fe.test.localhost/ client.ts:16 [vite] connecting... client-entry.js:47 [Quasar] Running SPA. client.ts:22 WebSocket connection to 'wss://fe.test.localhost/' failed: (anonymous) @ client.ts:22 [vite] server connection lost. polling for restart...
当前在Quasar 2的本地Docker开发环境中,*Vite热模块替换(HMR)*的WebSocket连接失败,出现服务器连接丢失并不断轮询重启的情况,存在重定向循环问题,寻求解决办法。
内容的提问来源于stack exchange,提问作者geoidesic
相关产品推荐
相关产品推荐

