为何配置后仍无法从其他设备连接VS Code运行的SvelteKit应用?
解决SvelteKit Dev服务远程访问问题
核心问题
你当前在svelte.config.js里给adapter-node配置的host和port是针对生产构建环境的,而npm run dev启动的是Vite开发服务器,这个配置不会对dev模式生效。
正确配置方式
方法1:启动命令直接指定参数
在启动dev服务时,通过命令行参数绑定允许局域网访问的地址和端口:
npm run dev -- --host 0.0.0.0 --port 5173
如果不需要指定固定端口,也可以简化为:
npm run dev -- --host
--host参数会自动让Vite绑定0.0.0.0,允许同一局域网内的所有设备访问。
方法2:通过Vite配置文件永久设置
如果不想每次启动都加参数,可在项目根目录创建或修改vite.config.js,添加开发服务器配置:
import { sveltekit } from '@sveltejs/kit/vite'; import { defineConfig } from 'vite'; export default defineConfig({ plugins: [sveltekit()], server: { host: '0.0.0.0', // 允许所有网卡接收请求 port: 5173 } });
额外排查要点
- 防火墙验证:检查本地电脑防火墙是否允许5173端口的入站连接,可临时关闭防火墙测试是否能访问。
- 端口占用检查:确认5173端口未被其他程序占用,执行以下命令查看:
若端口被占用,更换为其他未被使用的端口(如5174)。netstat -ano | findstr :5173 - 局域网IP确认:再次用
ipconfig核对本地IPv4地址,确保远程设备和你的电脑处于同一局域网。
内容的提问来源于stack exchange,提问作者Avi4nFLu
相关产品推荐
相关产品推荐

