Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

[Bug]: Herd 1.30.1 – nginx fails to start when Herd.app is not installed directly in /Applications (hardcoded path in config/pro/nginx/debug.conf)

Aperta Adatta ai principianti
#1,761 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
2/5
Tempo stimato
1-3 ore
Idoneità per principianti
76/100
Tipo di issue
Bug
Chiarezza
Specificata chiaramente
Stato di attività
Attiva
Stack tecnologico
javascript, nginx
Ambito
backend

Direzione di ricerca

Inizia da config/pro/nginx/debug.conf e confronta il percorso di js_import con il percorso effettivo del bundle e la configurazione nginx generata descritta nell’issue. Controlla come nginx risolve questa inclusione, quindi verifica che nginx si avvii quando Herd.app è installato in una sottocartella di /Applications.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

macOS
Platform

macOS

Operating system version

macOS 26.7

System architecture

ARM64 (M1, M2, etc)

Herd Version

1.30.1

PHP Version

No response

Bug description

I'm running into a startup failure of nginx after installing Herd in a subfolder of /Applications. Details below.

Environment

  • Herd 1.30.1 (build 67), Pro features enabled
  • macOS 26.7 (arm64, Apple Silicon)
  • Herd installed at: /Applications/Development/Herd.app
    (not at /Applications/Herd.app)

Symptom
nginx does not start. The Herd log shows:

2026/10/07 01:06:59 [emerg] 46104#9609806: SyntaxError: Cannot find module
"/Applications/Herd.app/Contents/Resources/config/pro/njs/detect.js"
in /Users//Library/Application Support/Herd/config/nginx/:1

php-fpm and dnsmasq start fine; only nginx is affected.

Root cause
All user-side configs that Herd generates correctly use the actual install path, e.g.

~/Library/Application Support/Herd/config/nginx/nginx.conf
include "/Applications/Development/Herd.app/Contents/Resources/config/pro/nginx/.conf";
include "/Applications/Development/Herd.app/Contents/Resources/config/default-sites/
.conf";
~/Library/Application Support/Herd/config/nginx/herd.conf
fastcgi_param SCRIPT_FILENAME "/Applications/Development/Herd.app/Contents/Resources/valet/server.php";
~/Library/Application Support/Herd/config/php/*/php.ini
extension=/Applications/Development/Herd.app/Contents/Resources/herd-ext/herd-84-arm64.so

However, the Pro nginx config shipped inside the app bundle has the default install path hardcoded:

/Applications/Development/Herd.app/Contents/Resources/config/pro/nginx/debug.conf
js_import "/Applications/Herd.app/Contents/Resources/config/pro/njs/detect.js";

Since nginx.conf includes that file, nginx fails at config parse time whenever the bundle is not located at /Applications/Herd.app. The detect.js file itself exists at the correct location
(/Applications/Development/Herd.app/Contents/Resources/config/pro/njs/detect.js).

Expected behaviour
The js_import path in config/pro/nginx/debug.conf should be resolved relative to the actual bundle location (as is already done for all other generated configs), or the file should be templated/generated into the user config directory with the real path.

Workaround
Creating a symlink /Applications/Herd.app -> /Applications/Development/Herd.app makes nginx start again. Moving the app to /Applications also works, but defeats the purpose of organizing apps in subfolders.

Happy to provide further logs or test a build.

Best regards,

Steps to reproduce

No response

Relevant log output

Lingua principale
Nessun dato sulla lingua
Stelle
123
Fork
1
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Preparare l'ambiente

Questo progetto non fornisce container di sviluppo, Dockerfile né guida per i contributori, quindi l'ambiente è a tuo carico: parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di beyondcode/herd-community

Tutte le issue di beyondcode/herd-community

Issue simili

Altre issue su Backend & API Design

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.