Hacktoberfest 2026:维护者为十月标记出来的 issue,仍然开放、适合新手。 浏览 Hacktoberfest issue

[Bug]: Vite detection truncates public/hot during Herd Share, causing assets to 404

未关闭
#1,769 0 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

还没有人认领这个 Issue。

评估

难度
3/5
预计耗时
1-2 天
新手友好度
57/100
Issue 类型
缺陷
描述清晰度
描述清楚
活跃度
活跃
技术栈
laravel, php, vite
领域
backend, devtools

调研方向

Start by tracing Herd Share’s automatic Vite detection and the monitoring timer that writes to Laravel’s public/hot file; the issue identifies Expose’s Windows early return as the likely cause. Reproduce on Windows with Herd Share and npm run dev, then check whether public/hot retains the valid Vite URL. Done means the file is not emptied when the Vite sharing process cannot start, and the shared site loads its Vite assets.

由索引模型根据 Issue 内容生成。

描述

windows
Platform

Windows

Operating system version

Windows 11 Pro 10.0.26200 Build 2600

System architecture

Intel (x86)

Herd Version

2.0.0

PHP Version

PHP 8.4

Bug description

On Windows, Herd Share’s automatic Vite detection corrupts Laravel’s public/hot file.
When Herd Share starts npm run dev, Vite initially writes a valid development-server URL to public/hot. Shortly afterward, Expose replaces the file contents with an empty string, leaving a zero-byte public/hot file.

Laravel still detects that the file exists and assumes the Vite development server is active. It consequently generates development asset URLs such as:

/@vite/client
/resources/js/app.js
/resources/scss/app.scss

These requests are sent through the shared Laravel URL and return 404 responses, so none of the Vite-managed JavaScript or CSS loads.

This appears to happen because Expose’s Vite-sharing implementation returns early when running on Windows, since it cannot create the Vite child process. However, the Vite monitoring timer continues running and writes the empty shared Vite URL into public/hot.

The application’s Vite entry points compile correctly with both npm run dev and vite build --watch. The problem occurs specifically when Herd Share’s automatic Vite integration is enabled.

TLDR:

Expose does not create the Vite sharing process on Windows, but its monitoring logic still replaces the contents of public/hot with the empty shared Vite URL. Laravel sees the existing file, enables development mode and generates asset URLs that return 404.

Steps to reproduce

Herd share using application
NPM run dev starts
Vite initially creates public/hot containing valid vite url
2 seconds later contents of public/hot are empty
Open site url and observe 404s for js and css files.

Relevant log output

主要语言
没有语言数据
星标
124
派生
1
PR 合并指标
30 天内没有已合并 PR

环境准备

这个项目没有提供开发容器、Dockerfile 或贡献指南,环境需要你自己搭建:先看它的 README,通用步骤见我们的新手贡献指南。

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

beyondcode/herd-community 的其他 Issue

查看 beyondcode/herd-community 的全部 Issue

相似的 Issue

更多 Backend & API Design Issue

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。