URL'lerim küçük harf olmalı mı?


17

Göre bu blog ( "Anlamak SEO Dostu URL Kullanımı Uygulamalar") Ben değişmelidir

http://example.com/Hello-Dolly

için

http://example.com/hello-dolly

Verilen nedenler:

  • URL'ler genel olarak büyük / küçük harfe duyarlıdır
  • büyük / küçük harfe duyarlı SEO ve analiz raporlarını basitleştirecek

Wikipedia'nın URL Normalizasyonu ile ilgili makalesinde bulduğum bu GIF'e göre, URL'lerimi herhangi bir büyük harften küçük harfe dönüştürmeliyim.

Ancak ASP.NET MVC kullanın ve varsayılan olarak benim URL'lerim bu şekilde yapılandırılmıştır ( CamelCase ):

http://www.example.com/Controller/Action/Parameter

http://www.example.com/Categories/List/Bicycles

İçinden yağsız ettik RFC1738 ama buna kesin bir cevap görmedim.

Çerçeveyi her şeyi küçük harfe çevirmeye zorlamak için yolumdan çekilmeli miyim? Herkes bana küçük harf kullanmamı söylüyorsa Microsoft neden çerçevesini böyle tasarlamayı seçti?


3
Harika bir soru ve webmasters.stackexchange.com adresinde topluluğunuza sorgunuzun harika sunumu! Bu konuda 'ödevinizi' gerçekten sormadan önce de yaptınız!
dvnkiss

Proxy'nin istenen URL'yi tüm küçük harflerle değiştirdiği ve ./SO/ alt dizinimdeki (stackoverflow örneklerini koyduğum) bir sayfayı barındıran bir Linux sunucusuna yapılan isteklerde 404'e neden olduğu bir sorunla karşılaştım. Bu, küçük harfin fark yarattığı bir kullanım örneğidir (proxy'nin kötü kodlandığını ancak bu gerçek hayat olduğunu iddia edebilirsiniz ...)
Floris

Yanıtlar:


10

Should I go out of my way to force the framework to change everything to lower case?

Hayır, bu gerekli değil. Windows işletim sistemleri, sunucu işletim sistemleri ve çerçeve uygulamaları da dahil olmak üzere büyük / küçük harfe duyarlı değildir. Ancak Linux / Unix işletim sistemleri büyük / küçük harfe duyarlıdır.

İnternet tabanlı uygulamalar (örn. Tarayıcılar) , RFC 3986'nın 6. bölümünde ele alındığı gibi URL'leri normalleştirmelidir :

URI'ler üzerindeki en yaygın işlemlerden biri basit karşılaştırmadır: ilgili kaynaklarına erişmek için URI'leri kullanmadan iki URI'nin eşdeğer olup olmadığının belirlenmesi. Yanıt önbelleğine her erişildiğinde, tarayıcı bir bağlantıyı renklendirmek için geçmişini kontrol eder veya bir XML ayrıştırıcı bir ad alanındaki etiketleri işler. URI'lerin karşılaştırılmasından önce kapsamlı normalleştirme genellikle örümcekler ve indeksleme motorları tarafından bir arama alanını budamak veya istek eylemlerinin ve yanıt depolamanın çoğaltılmasını azaltmak için kullanılır.

Şüphesiz bir Windows sunucusu kullanacağınız için, istenen URL'ler ve URI'ler istemci uygulamalarına geri gönderilecektir.


Yukarıdaki RFC'de ve URL Normalleştirmesi hakkındaki Wikipedia bağlantınızda belirtildiği gibi arama motorlarıyla ilgili olarak :

Arama motorları, web sayfalarına önem vermek ve yinelenen sayfaların endekslenmesini azaltmak için URL normalleştirmesi kullanır.

Ve konuyla ilgili bu rapor gibi kaynaklar olarak :

Daha yakın zamanda, Google /page1.html ve /Page1.html öğelerinin aynı içeriğin yalnızca iki örneği olduğunu daha iyi anlamaya başladı.


Why did Microsoft choose to design their framework like this if everybody is telling me to use lowercase?

İşletim sistemleriyle uyumludur ve RFC'lere göre teknik olarak yanlış değildir. Onlar da webmasters tahmin tutar şeyler yapmak için kendi yol var, :-)


1
Harika cevap, çok benzer bir cevap gönderecektim ama sen beni yendin! "Herkes bana küçük harf kullanmamı söylüyorsa Microsoft neden bu şekilde kendi çerçevelerini tasarlamayı seçti? ... Aynı zamanda web yöneticilerinin tahminini sürdüren bir şeyler yapma yolları da var." - Biraz seviyorum. Hatırlayabildiğim kadarıyla Microsoft, geliştiricilerin / web yöneticilerinin katı kurallarını bükmek için kendi araçlarına sahip!
dvnkiss

4

Değiştirmeniz gerektiğini bilmiyorum ama tutarlı olduğunuzdan emin olmalısınız.

Bunu birkaç yıl önce inceledim ve Google'ın standardı, TLD'nin önemi değil TLD'nin ardından bu durumdu.

O zaman adı verilen geçersiz bir sitede çalışıyordum BusinessForPhotographers.com; görünüşe göre bu durum sürekli olarak büyük / küçük harfe duyarsız olarak kabul edilir.

Sonra .combaşka bir mesele. Sunucunuz bunları aynı yere yönlendirse bile Google, görünümlerinden /Great-Articlefarklı olarak görünür /great-article.

Bu kurallılaştırma ve yinelenen içerik sorunlarını etkileyebilir. En güvenli yöntemin 301 yönlendirmesini doğru sürüme zorlamak olduğunu düşünüyorum.

Bu YouTube gibi bir hizmeti düşünmek anlamsız gelse /A1B2C3de URL ile aynı /a1b2c3mıdır?

Google'ın gözünde değil.


3

URI yolları büyük / küçük harfe duyarlıdır (aksi belirtilmedikçe). Bkz URI standardı STD 66, bölüm 6.2.2.1. Vaka Normalizasyonu :

Diğer genel sözdizimi bileşenlerinin, şema tarafından özel olarak tanımlanmadığı sürece büyük / küçük harfe duyarlı olduğu varsayılır.

HTTP URI yollarındaki büyük harfler bazı kullanıcılar için sorun teşkil ediyorsa, Wikipedia onlar için bozulur. Bu iki HTTP URI'si (yalnızca küçük oharfle büyük harf arasında farklılık gösterir O) farklı sayfalara yol açar:

Yani hayır, yok olması için URI'leri değiştirmek için.

Bununla birlikte, mümkünse (davayı Wikipedia'nın yaptığı gibi kullanmazsanız), tüm vaka değişkenlerine ve 301'in kurallı bir değişkene yönlendirilmesine izin vermek iyi bir uygulama olacaktır .

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.