Ich habe eine Express-App, die nur die Standard-leere App ist. Ich habe hinzugefügt, dann die Zeile:Statische Inhalte Subdomain mit Express?
app.use(serveStatic('docs/public', {'index': ['index.html', 'index.htm']}))
den Inhalt meines docs/public
Verzeichnis zu dienen. Das funktioniert großartig, aber es wird dem Stamm meiner Anwendung bereitgestellt, sodass ich die Standard-Express-Indexseite nicht mehr sehen kann.
Ich würde gerne die statische HTML (die ich derzeit als mein Index sehe) als Sub-Domain, z. blog.mydomain.com. Oder zumindest als mydomain.com/blog. Wie kann ich den statischen Inhalt einer Subdomain bereitstellen?
NB: Die statischen Dateinamen und Ordner können nicht geändert werden, da mein ./docs-Verzeichnis ein Hexoprojekt ist und alle Änderungen die Generierung des statischen Inhalts im Ordner "docs/public" unterbrechen würden.
Ich habe versucht, express-subdomain
zu verwenden, so habe ich Code wie folgt zu meinem app.js:
var router = express.Router();
router.use(serveStatic('docs/public', {'index': ['index.html', 'index.htm']}))
app.use(subdomain('docs', router));
jedoch Wenn ich laufen, dass ich die Express-Indexseite an http://localhost:3000/
(nicht die statische) erhalten was ich will, aber wenn ich zu http://docs.localhost:3000/
gehe, dann bekomme ich meinen statischen Inhalt, immer noch den ursprünglichen Express-Index. In der Tat, wenn ich den Sub-Domain-Code entfernen und die App ausführen, navigieren Sie zu der Docs-Subdomain Ich bekomme immer noch das gleiche Ergebnis.
I haben auch versucht, die Subdomäne Modul zu verwenden:
app.use(subdomain('docs', serveStatic('docs/public', {'index': ['index.html', 'index.htm']})));
jedoch, dass das gleiche Ergebnis wie oben (keine statische Inhalte dient) aufweist.
Wie kann ich den statischen Inhalt, den ich derzeit auf einer Subdomain erhalte, bedienen?
Haben Sie sich [express-subdomain] (https://www.npmjs.com/package/express-subdomain) angeschaut? –
@OmarDarwish ja, aber ich konnte nicht herausfinden, wie man es benutzt. Siehe mein Fragenupdate. –