Zauważyłem, że niektóre posty na blogach zawierają linki, których wartość zaczyna się /
od href
.
Na przykład:
<a href="/somedir/somepage.html">My Page</a>
Czy interlinia /
oznacza, że ścieżka zaczyna się od katalogu głównego witryny?
Innymi słowy, jeśli adres URL witryny to www.mysite.com
, efektywna href
wartość to www.mysite.com/somedir/somepage.html
?
Czy jest to konwencja akceptowana we wszystkich przeglądarkach?
//somedomain.com/somedir/
w niektórych linkach, który używa tego samego protokołu, który jest używany dla bieżącej strony, stackoverflow.com/questions/4978235/… stackoverflow.com/questions/4831741/...Odpowiedzi:
Ważne jest, aby rozpocząć adres URL od
/
tak, aby zamierzony adres URL był zwracany zamiast nadrzędnego lub podrzędnego.Powiedzmy, że jeśli podczas przeglądania
/cream-cakes/
masz link na stronie, któryblah.html
bez ukośnika będzie próbował odwiedzić stronę,/cream-cakes/blah.html
a ukośnik przy założeniu, że masz na myśli najwyższy poziom, który będziedomain.com/blah.html
.Zasadniczo najlepiej jest zawsze korzystać
/
z mojego doświadczenia, ponieważ jest bardziej przyjazne, gdy zmieniasz strukturę swojej witryny, chociaż nie ma dobrego ani złego założenia, że zamierzona strona zostanie zwrócona.źródło
Technicznie jest wymieniony w sekcji 4.2 z RFC 3986 , jako „bezwzględnego odniesienia ścieżka”:
Zapewnia, że ścieżka jest bezwzględna do katalogu głównego, a nie do katalogu bieżącego (określanego jako odniesienie do „ścieżki względnej”). Zobacz to, aby uzyskać szerszą dyskusję na ten temat.
źródło
To jest link do katalogu głównego. Jest to link względny (nieco podobny do
../
), ale zaczyna się w katalogu głównym witryny. Jeśli strona o trzech poziomach w głębi witryny zaczyna link z ukośnikiem, pozostała część ścieżki będzie względna do katalogu głównego witryny.Zaletą tej formy ścieżki jest mniej znaków w znacznikach:
http://example.com/page.html
vs
/page.html
Kolejną zaletą jest przenośność między zmianami domen. Jeśli
example.com
zawartość zostanie przeniesionaexample.org
, na przykład, linki względne do katalogu głównego będą nadal działać, zakładając, że użyto tego samego nazewnictwa / układu katalogu. Szczególnie przydatne, gdy programujesz strony lokalnie, a następnie przesyłasz je do sieci.Podobnie jak w przypadku innych typów ścieżek - względnych (
../
) i bezwzględnych (http://...
) nadal podlega to aktualizacji łączy, gdy nazwy plików lub katalogów są zmieniane lub przenoszone.źródło
Ten samouczek wskazuje, że odpowiedź na moje pytanie brzmi „tak”.
Efektywna
href
wartość jest rzeczywiście:www.mysite.com/somedir/somepage.html
.źródło