Ich habe den folgenden Code ein, zum Beispiel in meinen Template-Dateien:Serving statische Dateien in Express ohne IP-Adresse
<link href="http://localhost:3000/css/bootstrap.min.css" rel="stylesheet">
Dies zwingt mich die IP-Adresse von http://localhost:3000
auf den Web-Server IP zu ändern Adresse, wenn ich die Website starte. Wie Sie sich vorstellen können, gibt es viele Template-Dateien für die gesamte Site. Ich habe Skripte geschrieben, die die IP-Instanzen in den Vorlagendateien des Projekts suchen und ersetzen können, und das möchte ich vermeiden, wenn ich kann.
Ich mag würde das folgende Format halten:
<link href="css/bootstrap.min.css" rel="stylesheet">
Hinweis es unabhängig von der Herkunft. Ich hoffe, es gab Middlewear, dass Express den aktuellen Standort des Servers verwenden konnte, um die Dateien zu bedienen.
Ich bin derzeit mit diesen Code in meiner server.js
Datei:
app.use(express.static(path.join(__dirname ,'/v1/public/')));
Und funktioniert großartig, wenn ich den Host in den Template-Dateien angeben. Ich habe online keine Ressourcen gefunden, die das machen, was ich einfach machen möchte.
Warum nicht nur absolute Pfade verwenden? – SLaks
Ich denke, Sie möchten den Port anders einstellen? http://StackOverflow.com/a/17004592/3662110 – jmargolisvt
@SLaks Wie in dem Beitrag erwähnt, müsste ich manuell oder schreiben ein Skript, um den absoluten Pfad zu ersetzen, wenn ich den Server autonom zu ersetzen. – Maverick