Czy można wymusić/rozszerzyć mechanizm routingu, aby generować adresy URL małymi literami, podając /controller/action
zamiast /Controller/Action
?Adresy URL małych liter w ASP.NET MVC
Odpowiedz
Tak, po prostu zmień go w routingu w pliku global.asax.
@ Wszystkie pytania, czy to ważne: tak I do wydaje mi się, że to ważne. Posiadanie adresu URL w całości małymi literami wygląda lepiej.
Za każdym razem, gdy nie możesz zrobić czegoś ładnego, kiedy możesz, Bill Buxton zabija kotka.
Wow, Bill Buxton jest HARSH! – SirDemon
Myślę, że każdy, kto był w Mix lub ReMix w ciągu ostatnich 12 miesięcy musiał usiąść przy Big Billy B (wprawdzie całkiem interesującym) na temat znaczenia designu, który musi być wypiekany w produkcie. –
Co więcej, należy wymusić, aby wszystkie przychodzące żądania wielkimi literami były przekierowywane na do wersji pisanej małymi literami. Wyszukiwarki traktują adresy URL z rozróżnieniem na małe i wielkie litery, co oznacza, że jeśli masz wiele linków do tej samej treści, ranking stron w tej witrynie jest rozproszony, a więc rozrzedzony.
Powracający HTTP 301 (przeniesiony na stałe) dla takich linków spowoduje, że wyszukiwarki "scalą" te linki, a zatem będą mieć tylko jedno odniesienie do treści.
dodać coś takiego do pliku Global.asax.cs
:
protected void Application_BeginRequest(object sender, EventArgs e)
{
// Don't rewrite requests for content (.png, .css) or scripts (.js)
if (Request.Url.AbsolutePath.Contains("/Content/") ||
Request.Url.AbsolutePath.Contains("/Scripts/"))
return;
// If uppercase chars exist, redirect to a lowercase version
var url = Request.Url.ToString();
if (Regex.IsMatch(url, @"[A-Z]"))
{
Response.Clear();
Response.Status = "301 Moved Permanently";
Response.StatusCode = (int)HttpStatusCode.MovedPermanently;
Response.AddHeader("Location", url.ToLower());
Response.End();
}
}
Należy pamiętać, że uwzględni to również rozróżnianie wielkości liter parametrów zapytania, co może, ale nie musi być problemem w zależności od aplikacji (z pewnością byłoby to dla niektórych rzeczy, nad którymi pracowałem). – roryf
- 1. Adresy URL małych liter i końcowy ukośnik
- 2. Jak wymusić routing małych liter w ASP.NET Core MVC 6?
- 3. asp.net mvc multilanguage adresy/routing
- 4. Jak utworzyć przyjazne dla SEO adresy URL w ASP.Net-MVC
- 5. Drogi URL ASP.NET MVC
- 6. Adresy niewrażliwe na wielkość liter dla Django?
- 7. Standardowe adresy URL ExpressJS/kanoniczne adresy URL:
- 8. Metoda JavaScript Namingowanie małych i wielkich liter
- 9. ASP.NET MVC SEO URL
- 10. Colon ASP.NET MVC w URL
- 11. Automatyczne generowanie małych przerywanych tras w środowisku ASP.NET Core
- 12. Niestandardowy rezolwer Json.NET dla podkreślenia małych liter w CamelCase
- 13. zdjęć ASP.NET MVC i innych statyczny url
- 14. Domyślny URL ASP.NET MVC Wyświetl
- 15. Asp.net MVC SEO Friendly URL
- 16. Wyliczanie adresów URL trasy ASP.NET MVC RouteTable
- 17. Dlaczego PostgreSQL domyślnie wszystko do małych liter?
- 18. ASP MVC Przyjazne adresy URL i względna ścieżka Obrazy
- 19. Jak utworzyć przyjazny adres URL w ASP.NET MVC?
- 20. NewtonSoft JsonSerializer - Właściwości i słownik małych liter
- 21. Niepoprawny URL ASP.NET MVC w wywołaniach ajax
- 22. ASP.NET MVC, Nhibernate i repozytoria dla małych/średnich projektów
- 23. Wykryj adresy URL w UILabel
- 24. końcowe ukośniki w adresach URL asp.net mvc z IIS 7
- 25. Absolutne adresy URL CakePHP
- 26. Dynamiczne adresy URL Django
- 27. łączy względne adresy URL?
- 28. Url pomocnika do pełnego adresu URL w ASP.NET MVC-3
- 29. Spring-MVC 3.1: Jak zmapować adresy URL za pomocą ukośnika?
- 30. W jaki sposób uczynić adresy URL nieczułymi na wielkość liter w serwerze Linux
Tak, myślę, że tak. Nie jestem pewien, czy ma jakieś implikacje SEO, czy nie, ale wygląda o wiele lepiej. –