Saya selalu bertanya-tanya tentang hal ini dan tidak pernah menemukan solusi yang baik.
Tetapi pertanyaan ini mengingatkan saya akan hal itu.
Ketika saya memiliki URL di situs web saya, URL itu dapat ditampilkan dan diakses dengan salah satu cara berikut:
http://www.somesite.com/subdirectory
http://www.somesite.com/subdirectory/
http://www.somesite.com/subdirectory/index.htm
http://www.somesite.com/subdirectory/index.html
http://www.somesite.com/subdirectory/index.php
http://www.somesite.com/subdirectory/index.asp
http://www.somesite.com/subdirectory/some-relevant-keywords
http://www.somesite.com/subdirectory/some-relevant-keywords.htm
http://www.somesite.com/subdirectory/index.php?page=some-relevant-keywords
http://www.somesite.com/subdirectory/?page=some-relevant-keywords
http://www.somesite.com/subdirectory/?page=some-relevant-keywords&even=more-keywords
dll ...
Sekarang, saya bisa memahami manfaat menambahkan kata kunci di URL. Bahkan panduan SEO paling dasar akan menyebutkan untuk melakukan hal itu. ... tetapi demi kewarasan, kejelasan, kemudahan membaca, kemudahan penggunaan, dan sebagainya, termasuk kepatuhan web ...
Apakah lebih disukai memiliki ekstensi file atau tidak?
Sungguh, jauh di lubuk hati logika saya mengatakan: ya, seharusnya begitu. Alasannya adalah ini berasal dari masa lalu ketika internet sebagian besar adalah USENET, FIDONET, FTP dan GOPHER.
Lihat, jika URL tidak memiliki nama file , maka biasanya dianggap sebagai direktori . Di sinilah index.htm muncul, karena ini secara default mendaftar direktori jika tidak ada file indeks yang ditemukan. Namun, tak lama kemudian, pemrogram web mulai menimpanya dan menggunakan index.htm untuk benar-benar menyajikan konten direktori web itu sebagai halaman . Perbedaan utama, adalah bahasa markup ditambahkan, dan ini diuraikan dalam browser. Dengan bahasa markup ini, Content-Type:text/html;
tag di header respons menjadi indikator untuk jenis file apa itu untuk file apa pun . HTML tampaknya menjadi satu-satunya "tipe file" yang tidak memiliki ekstensi nama secara konsisten, kecuali ketika mereka disimpan.
Sayangnya, setelah halaman web menjadi hal utama, itu menjadi kesalahan keamanan untuk benar-benar menampilkan konten direktori, jadi semuanya tetap tersembunyi dengan hanya konten URL aktual yang ditampilkan.
Belum lagi perang penamaan file lintas-platform .. berbasis windows membutuhkan ekstensi 3 digit atau kurang, dan unix / mac dapat memiliki lebih banyak. Jadi haruskah itu .HTM
atau .HTML
atau NONE
dan biarkan platform memutuskan?
Jadi intinya, saya kira apa yang saya coba cari tahu di luar SEO dan lebih banyak berurusan dengan estetika dan kepatuhan web.
*.*
ke itu.Jawaban:
Gunakan ekstensi. Di mana terdapat lebih dari satu representasi atau di mana perangkat lunak klien benar-benar bodoh dan menolak untuk menerima Tipe-Konten saja (QuickTime, RealPlayer, Outlook, dll. Saya melihat Anda):
http://www.somesite.com/subdirectory
- ini bisa menjadi versi negosiasi otomatis Anda yang menggunakan tag META Canonical untuk menunjuk ke representasi aktualhttp://www.somesite.com/subdirectory/
- selalu layak untuk mendukung garis miring pada URL apa pun tetapi menggunakan tag META Canonical (bukan arahan ulang karena ini adalah perlambatan yang tidak perlu) untuk menunjuk ke URL yang benarhttp://www.somesite.com/subdirectory/index.htm
danhttp://www.somesite.com/subdirectory/some-relevant-keywords.htm
- batas ekstensi tiga karakter tidak berlaku untuk HTTP (hanya FileSystem / OS yang mendasari) sehingga klien dapat menyimpan ini sebagai index.html atau aa jika mereka mau, sementara masih dapat mengaksesnyahttp://www.somesite.com/subdirectory/index.html
- jika Anda menyajikan .atom, .xml, atau versi serupa maka masuk akal juga untuk menghormati versi .html (dan ditautkan secara kanonik melalui tag LINK pada versi yang dinegosiasikan secara otomatis) - gunakan header Lokasi Konten HTTP untuk menunjuk ke versi auto-negotiation - ingat Anda juga bisa menggunakan multi-bahasa (.en, .es, dll ...) atau multi-charset (.utf8, .utf16, dll ...)http://www.somesite.com/subdirectory/index.php
danhttp://www.somesite.com/subdirectory/index.asp
- kecuali Anda menyajikan kode sumber maka ini tidak masuk akal untuk mendukunghttp://www.somesite.com/subdirectory/some-relevant-keywords
- SEO adalah seni yang terus berubah dan jika ini bekerja untuk Anda maka bagushttp://www.somesite.com/subdirectory/index.php?page=some-relevant-keywords
,http://www.somesite.com/subdirectory/?page=some-relevant-keywords
danhttp://www.somesite.com/subdirectory/?page=some-relevant-keywords&even=more-keywords
- jika ada banyak cara untuk memanipulasi konten maka ini bagus - tetapi biasanya halaman layak URL mereka sendiri bukan string kueri dan jenis URL ini harus dihindari (coba buat seseorang komputer buta huruf untuk mengetik salah satu dari yang ada di)sumber
/es/subdirectory/index.html
daripada bahkan lebih dari subdomainhttp://es.example.com/subdirectory/index.html
. Apakah Anda memiliki informasi tentang seberapa baik ekstensi .es didukung oleh mesin pencari? Karena saya akan senang menggunakannya. (Juga bisakah Anda menggabungkannya? Seperti/index.utf16.es
?)Saya akan mengatakan jangan sertakan ekstensi file jika perangkat lunak yang Anda gunakan memungkinkan Anda untuk menghilangkannya. Jadi dari daftar contoh Anda, preferensi saya adalah:
Browser tidak peduli apakah sesuatu itu direktori atau tidak di situs, atau apakah itu file HTML, file .asp atau apa pun - mereka hanya membuat permintaan HTTP dan mendapatkan respons HTTP. Jadi, jika ekstensi itu berlebihan, jatuhkan.
Ini juga memiliki manfaat tambahan untuk membuat URL Anda lebih ringkas (dan lebih mudah dibaca di telepon - "contoh produk dot com slash" jauh lebih bagus daripada "contoh produk dot com slash dot htm l"), dan membuatnya lebih mudah untuk beralih teknologi di masa mendatang (karena tidak diperlukan perubahan URL).
sumber
some-relevant-keywords
memiliki kesetaraan yang(some) (!exclude->relevant) (!exclude->keywords)
menyebabkan setiap ahli SEO untuk mengubahnya tiba-tiba untuksome+relevant+keywords
menghancurkan estetika dan keterbacaan menggunakan tanda hubung sebagai karakter pemisah. Penyebab root:/?query=some-relevant-keywords
sudah merupakan pengecualian literal.URI keren tidak berubah . (Pergi ke bagian berjudul "Jadi apa yang harus saya lakukan? Merancang URI")
sumber
Tidak ada dalam RFC yang diamanatkan memiliki ekstensi file, juga tidak ada yang mengharuskan Anda untuk meninggalkannya. Itu pilihan yang Anda buat.
HTTP URI yang sesuai tidak perlu ekstensi file untuk apa pun. Ada sekumpulan header HTTP yang kaya (terutama tipe MIME) untuk menangani semua yang digunakan untuk ekstensi file.
Yang mengatakan, sebagian besar browser saat ini sebenarnya mengandalkan kombinasi tipe MIME, ekstensi, dan 'sidik jari' biner dari byte pertama untuk menentukan tipe konten. Ini kadang-kadang dapat memberikan hasil yang mengejutkan , dan penting bagi kita webmaster untuk menetapkan header yang tepat (dan mungkin menonaktifkan sniffing jenis konten jika kita 101% yakin header kita benar).
Ada satu situasi di mana ekstensi file berguna: Jika pengguna akhir menyimpan konten dari situs Anda ke komputer lokalnya untuk digunakan nanti. Secara teoritis peramban 'pintar' harus memastikan bahwa konten yang disimpan berfungsi untuk jenis komputer lokal; tetapi dalam praktiknya Anda dapat membantu semua orang dengan menyajikan konten dengan ekstensi standar industri seperti .jpg, .mp4, .css, dll. Dalam pengalaman saya, semua browser menangani jenis HTML dengan benar. Anda tidak perlu menambahkan ekstensi .htm / .html pada HTML sendiri, peramban akan menangani jenis konten khusus ini dengan benar.
Keamanan: Orang bisa berpendapat bahwa ada manfaat keamanan dalam menyembunyikan platform mana yang Anda gunakan (.php / .asp dll). Itu benar. Dalam praktiknya saya pikir setiap peretas yang baik akan segera mengetahui hal ini, jadi saya tidak berpikir menyembunyikan ekstensi ini untuk keamanan saja sepadan dengan masalahnya.
Pertimbangan khusus: Jika Anda berencana untuk menggunakan CDN di masa depan, dan CDN Anda adalah tipe "push" (konten diunggah ke CDN sebelumnya fx melalui SFTP), maka Anda mungkin ingin menyimpan ekstensi file. Sebagian besar sistem pihak ke-3 melihat ekstensi file untuk mengetahui tipe MIME mana yang digunakan untuk menyajikan konten.
Pilihan pribadi saya telah menjadi:
Ketika HTML dihasilkan secara dinamis oleh aplikasi web saya, saya tidak menambahkan ekstensi .html 'palsu' untuk meniru direktori dan struktur file yang sebenarnya tidak ada di sana. Saya menormalkan URL dan saya membakukan format URL yang digunakan untuk alasan SEO. Saya pribadi lebih suka memiliki garis miring pada daun terakhir URL, yaitu
http://example.org/first/second/
, tapi itu masalah selera.Ketika kita sebenarnya berbicara tentang file aktual yang diunggah ke harddisk di suatu tempat, maka saya menyimpan ekstensi file 'normal' untuk jenisnya. Jadi .css / .js / .exe / .mp4 dll digunakan untuk jenis konten ini.
sumber
.htm
meniru direktori (agak override index.htm) benar-benar tidak "palsu" karena Anda menyajikan konten HTML. Itu akan palsu jika kontennya bukan HTML.Saya telah melakukan sedikit eksperimen informal, dan apa yang saya temukan mengejutkan saya tetapi masuk akal.
Dari sudut pandang konten yang disampaikan kepada pengguna, serta pengikisan layar, Tipe-Konten mengatur hari itu.
Namun, ada atau tidaknya ekstensi, serta apa ekstensi itu, tampaknya mempengaruhi kunjungan mesin pencari.
Ketika saya menghilangkan ekstensi sama sekali, saya mendapat hit yang relatif sedikit - seolah-olah URL adalah lokasi atau konten dinamis dan oleh karena itu tidak terlalu layak untuk diindeks.
Ketika saya mengubah tautan yang sama untuk menggunakan ekstensi .xml, karena halaman-halaman itu sebenarnya dihasilkan oleh XSLT (di sisi server), pengindeksan sebenarnya turun lebih jauh - mungkin karena ia mengira itu hanya data atau hasil dari beberapa permintaan terprogram .
Ketika saya mengubah tautan yang sama untuk menggunakan .html, mesin pencari menjadi liar dengan situs tersebut.
Saat ini, situs saya menangani ketiganya secara transparan, tetapi ketika menyediakan tautan yang dapat diklik, saya mengembalikan versi .html dari URL.
Saya ingin berpikir mesin pencari sedikit lebih pintar, atau sedikit kurang bias, tetapi itulah yang saya amati terjadi pada halaman saya.
sumber
http://example.com/index.exe
Tidak, Anda tidak boleh menggunakan ekstensi file untuk tipe halaman normal kecuali Anda benar-benar membutuhkannya karena alasan teknis. Bagaimana cara meningkatkan pengalaman pengguna? Ini lebih banyak untuk diketik, namun memberi tahu mereka tidak ada yang berguna. Apa yang dapat mereka lakukan mengetahui bahwa situs Anda adalah PHP, ASP, dll? URL lebih sederhana, lebih bersih, lebih bermanfaat, dan lebih mudah diingat tanpa ekstensi file.
Saya pikir saya tidak setuju. Secara umum, URL adalah direktori hanya jika memiliki garis miring. Tanpa garis miring, itu dianggap file.
sumber
.php
atau.asp
jika pengguna menyimpannya, itu akan menjadi tipe file yang tidak dikenal dan komputer yang buta huruf mungkin tidak tahu cara membukanya kembali. Tanpa filetype, browser akan menambahkannya, tetapi mungkin ini menghambat beberapa mesin pencari?Anda hanya perlu menambahkan ekstensi file, jika konten di balik URI sebenarnya adalah file. Tetapi bahkan kemudian Anda bisa menjatuhkannya, jika hanya ada satu representasi darinya (JPG, PDF, ...).
Jika ada beberapa representasi, cara HTTP akan meminta format dinegosiasikan melalui
Accept
header. Tetapi jika Anda ingin pengguna Anda memiliki suara di dalamnya, Anda mungkin ingin memiliki ekstensi sehingga mereka dapat memilih representasi yang mereka inginkan (JPG, PNG, ...) dengan meminta URI yang satu atau yang lain.sumber