Frage

Sorry, wenn dies eine dumme Frage ist ...

Ich habe eine Anwendung entwickelt, das durch das Voranstellen Urls mit dem Site-Stamm absolute Links erstellt (von welcher auch immer Website ihm gehostet wird).

Zum Beispiel:

<link rel="stylesheet" href="<?=SITE_ROOT?>/assets/css/global.css">

Beachten Sie, dass ein Schrägstrich nach Site-Stamm kommt. Ich muss das jetzt konvertieren relative Links zu sein, also habe ich versucht, einen Punkt als der Wert von SITE_ROOT verwenden.

Dies schafft dies:

<link rel="stylesheet" href="./assets/css/global.css">

Soweit ich sagen kann, es funktioniert gut. Ist dies ein legitimer relativer Link? Oder gibt es einen Grund, warum soll ich es auf diese Weise nicht tun?

Hinweis: Ich bin nicht ein Verzeichnis zu gehen versuchen, sonst würde ich verwenden ../ Ich versuche einfach im gleichen Verzeichnis zu bleiben. Da gibt es einen Schrägstrich nach SITE_ROOT ist, kann ich es nicht leer lassen oder es wäre eine Wurzel relative Verknüpfung werden.

Update: Wird diese Arbeit mit IIS

War es hilfreich?

Lösung

arbeiten Diese Links auf dem Client, nicht auf dem Server, und soweit ich weiß, sollen die gleiche wie <a> Links verhalten. ./assets/css/global.css ist die gleiche wie assets/css/global.css, also die Ordner Assets unter dem aktuellen Unter Ort. der ./ Teil ist redundant. Wenn Sie, was mit dem Server eine Verbindung relativ Sie es mit einem Schrägstrich beginnen sollten, das heißt:. /assets/css/global.css geht an stackoverflow.com/assets/css/global.css, auch wenn Sie auf einer Unter Seite sind

Andere Tipps

Ich denke, es ist in Ordnung.

Ich denke, es ist Client-Seite, so sollte es mit ASP.Net arbeiten.

sein legitim.

Just überprüfen, ob dies mit IIS-Server funktioniert. IMO sollte es. Es tut mit Apache.

JRH

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top