Viele Male ich sehe , dass URL - Erweiterungen sind versteckt (zB .html
, .php
), aber nicht alle Websites tun.
Warum verstecken Webmaster die Erweiterung? Ist es aus Sicherheitsgründen, damit die URL sauberer aussieht, oder für einen anderen Zweck?
url
url-rewriting
filenames
clean-urls
unbekannte
quelle
quelle
Antworten:
Es gibt mehrere Gründe, Erweiterungen von URLs zu entfernen:
Denken Sie daran , dass viele Websites von einem Content - Management - System erzeugt werden (CMS) , die URLs wie folgt aussehen würde:
/index.php?page=this-is-the-widget-page
. Das ist besonders hässlich und hat weit mehr Cruft als nur eine Erweiterung. Das Umschreiben zum Entfernenindex.php?page=
macht es viel besser.Erweiterungen im Web sind nicht erforderlich, da Server den Dokumenttyp als Header senden. Webseiten werden als
text/html
, Bilder alsimage/png
oder dargestelltimage/jpeg
. Auf diese Weise können Browser den Inhalt ohne Verwendung einer Erweiterung rendern, um herauszufinden, dass die URL Text, HTML, PDF oder Bild enthält (weitere Informationen finden Sie im Wikipedia-Artikel Internetmedientyp ).Einige Webmaster verwenden für ihre URLs eine Erweiterung, die diesem Inhaltstyp entspricht. Jedes
text/html
Dokument hätte also eine.html
Erweiterung und jedesimage/png
Dokument hätte eine.png
Erweiterung. Dies kann hilfreich sein, wenn die URLs im Dateisystem gespeichert werden, in dem die Metadaten zu ihrem Inhaltstyp verloren gehen. In den meisten Dateisystemen wird das Programm, mit dem die Datei geöffnet wird, von der Erweiterung ausgewählt. Selbst wenn eine Seite von PHP bereitgestellt wird, entfernen einige Webmaster die.php
Erweiterung und andere ersetzen sie durch.html
.Es stellt sich auch die Frage, ob URLs möglicherweise besser mit einem abschließenden Schrägstrich (
/
) enden, wenn sie keine Erweiterung haben, worüber Stapelüberlauf viel diskutiert wird.quelle
Alle Webserver haben eine oder mehrere "Standarddateien". Es ist die Datei, die angezeigt wird, wenn ein Besucher zu einer URL geht, die mit einem Schrägstrich endet
/
, dh einem Ordner.Wenn die Standard - Dateinamen auf Ihrem Webserver ist
index.php
und ein Besucher geht anwww.example.com/pagename/
, sie sind tatsächlich Zugriffwww.example.com/pagename/index.php
.Wenn kein Trailing vorhanden ist
/
, schreibt der Webserver wahrscheinlich nur die URL neu, um sie zu entfernen, da dies nicht erforderlich ist. Diese Seite macht das in der Tat.quelle
Dies ist die Art von „coolem“ URI-Schema, das ich auf meiner eigenen persönlichen Website anstrebe.
Persönlich war der Grund dafür (und wahrscheinlich auch für viele andere Webdesigner / Entwickler!), Dass ich den Artikel „Coole URIs ändern sich nicht“ gelesen habe - dieses Dokument wurde vom Gründervater des World Wide Web, Tim Berners, verfasst -Lee.
In Tim Berners-Lees berühmtem Artikel nennt er im Grunde die gleichen Gründe, die Stephen Ostermiller in seiner ausgezeichneten Antwort auf diese Frage hat .
Um Ihre Hauptfrage zu beantworten: "Warum sind Erweiterungen in URLs versteckt?" Nun, ich würde sagen, dass die Hauptgründe für mich sind:
1. Um die URI zukunftssicher zu machen:
Zum Beispiel hätte es sich damals als eine gute Idee angehört, einen URI zu verwenden, der wie folgt lautet :
http://www.example.com/page.pl
Dabei handelt.pl
es sich um die Dateierweiterung für ein Perl-Skript. Allerdings verwenden thesedays, die meisten Web - Entwickler ASP.NET oder PHP für Back - End-Scripting, so Vorabend obwohl heute ,http://www.example.com/page.php
klingt wie eine bessere Idee, schließlich PHP und ASP / ASP.net wird geworden altmodisch. Eine bessere Idee ist es, die Erweiterung einfach ganz zu entfernen.2. Lesbarkeit und Erinnerbarkeit:
Es ist viel einfacher, eine „coole“ URI mündlich, auf Papier (z. B. Werbung, Visitenkarten usw.) an Personen weiterzugeben, ganz zu schweigen davon, dass sie leichter zu merken ist.
3. "Hackbarkeit" *
Obwohl ich sagen würde, dass die große Mehrheit der Nutzer heutzutage wahrscheinlich eine Suchmaschine für alles durchläuft - ich habe sogar Leute gesehen, die in die Adressleiste gingen und tippten
www.google.com
und dann Google verwendeten, um buchstäblich einzutippenwww.ebay.com
! Wenn ich jedoch eine auf Multimedia basierende Website habe, weist der URIhttp://www.example.com/video
darauf hin, dass der Musikabschnitt unter dem URI zu finden isthttp://www.example.com/audio
, und so weiter. (Ich benutze immer noch die Adressleiste, um zu Websites zu gehen - ich bin ziemlich altmodisch in Bezug auf solche Dinge!)* (! Oh „Wartbarkeit“ - geht das Wort gibt es auch ?! Nun, es ist jetzt !) :-)
4. ** Ästhetik: Um sie schöner aussehen zu lassen! (Beschuldige meine Zwangsstörung!)
Beim Durchlesen verschiedener SEO-bezogener Websites ist mir jedoch aufgefallen, dass viele Webmaster tatsächlich Dateierweiterungen an dynamische URIs anhängen, z.
Die tatsächliche URI kann sein:
http://www.example.com/article
Der Webmaster führt jedoch eine Neuschreibung durch, um den URI statisch aussehen zu lassen, z. B .:
http://www.example.com/article.html
Die Logik dahinter ist, dass im Grunde genommen eine Suchmaschine statischen Seiten (die sich anscheinend weniger wahrscheinlich ändern) einen höheren Rang zuweisen wird. (Obwohl ich nicht gerade ein Experte für SEO bin, kaufe ich mir diese Idee persönlich nicht ein. Ich gehe davon aus, dass es angesichts der Art der Köpfe, die hinter den Google- und Bing-Algorithmen stecken, etwas mehr als eine falsche Dateierweiterung erfordern wird con your way you in die SERP-Pole Position!)
Weitere Informationen zum Benennen von URIs finden Sie in den folgenden Artikeln:
Tim Berners-Lee:
W3C QA-Tipps:
Brian Kelly (UK Web Focus / UKOLN - Universität Bath):
Hoffe das hilft!
quelle
Ich stimme allen obigen Antworten voll und ganz zu. Nur hinzufügen, dass einer der Gründe, warum Erweiterungen in URL versteckt sind, die Sicherheit ist. Einfach ausgedrückt, wenn Sie die Erweiterung in der URL nicht offenlegen, ist es nicht schwer, die Technologie herauszufinden, auf der die Anwendung aufgebaut wurde. Nehmen wir also an, eine Seite wurde in PHP erstellt und die Erweiterung ist nicht verborgen. Dann könnte ein Hacker potenziell die Sicherheitslücken von PHP ausfindig machen und damit böswillige Aktivitäten ausführen.
quelle
Wenn Sie Ihre Seitenerweiterungen verbergen oder nicht, wissen die Leute immer noch, welche Technologie Sie verwendet haben. Mit cURL ist es nicht unmöglich, Ihre Technologie durch Abrufen der Header-Informationen abzurufen.
Dann würden Sie etwas wie Ihre Technologie, Cache-Anforderung, Verbindung und mehr sehen.
quelle
Stimme vollkommen zu, wie von "Stephen Ostermiller" erklärt, aber ich möchte den Trick erwähnen, der dahintersteckt, die Erweiterung von URLs zu verbergen. Und dafür müssen Sie die .htaccess- Umschreiberegel verwenden. Hier ist das Skript, das Ihnen hilft:
Leiten Sie externe
.php
Anforderungen an eine URL ohne Erweiterung umquelle