SEO dla strony internetowej ASP.NET

  1. Utwórz niepowtarzalny tytuł dla każdej strony
  2. Użyj metatagów opisu i słów kluczowych
  3. Używanie znacznika H1
  4. Przekierowanie adresu URL ASP.NET
  5. SEO Friendly URLs: Url Rewriting
  6. ViewState i SEO w ASP.NET
  7. SEO Friendly paging z GridView, Repeater i innymi kontrolkami danych
  8. Nowe funkcje SEO w ASP.NET 4.0
  9. Response.RedirectPermanent do stałego przekierowania 301
  10. Radzenie sobie z www. subdomena
  11. AJAX i optymalizacja wyszukiwarek
  12. Problemy z sesjami SEO
  13. Wniosek

Każdy programista ASP.NET (lub przynajmniej większość z nas) chce wielu użytkowników swoich stron internetowych. Google, Yahoo i inne wyszukiwarki mogą wysyłać mnóstwo odwiedzin, zwłaszcza jeśli Twoja strona jest wyświetlana na pierwszej stronie wyników wyszukiwania. I odwrotnie, jeśli Twoja strona internetowa jest wyświetlana na trzydziestej stronie lub nie jest indeksowana, nie zobaczysz żadnej korzyści z wyszukiwarek. Ponieważ każdy chce wygrać pierwszą stronę, istnieje silna konkurencja i trzeba zadbać o każdy czynnik, który wpływa na to, jak bardzo strona będzie przyjazna dla wyszukiwarek.

Istnieje ponad 100 ważnych czynników wykorzystywanych przez wyszukiwarki do rangowania strony. Większość z nich to tylko spekulacje, ponieważ Google, Yahoo i inni nie chcą ujawniać swojego algorytmu rankingowego. Ponadto ich algorytmy są bardzo często zmieniane (setki razy w roku), aby poprawić wrażenia użytkownika i zapewnić poprawne wyniki. Nawet Google nie ma możliwości ręcznej zmiany rankingu strony, jeśli uważa, że ​​niektóre strony powinny być lepsze lub gorsze w rankingu. Zamiast tego próbują dowiedzieć się, jaki błąd w algorytmie spowodował niewłaściwy ranking i spróbować poprawić go w ten sposób. Z tego powodu Search Engine Optimization (SEO) jest bardzo dynamiczną dziedziną, ale podstawy i najważniejsze rzeczy są nadal takie same.

Utwórz niepowtarzalny tytuł dla każdej strony

Każda strona witryny musi mieć własny, niepowtarzalny tytuł. Tytuł powinien być krótki, opisowy, znaczący, zawiera słowa kluczowe i odnosi się do treści strony. Nie wstawiaj powtarzających się fraz jak nazwa firmy na początku tytułu każdej strony. Najpierw wyświetl najważniejsze informacje. Znacznik tytułu można edytować w czasie projektowania, ale jeśli masz jakiś system zarządzania treścią, możesz go zmienić, używając właściwości Page.Title z kodem takim jak ten:

[C #]

Page.Title = "Mój unikalny i bogaty w słowa kluczowe tytuł";

[VB.NET]

Page.Title = "Mój unikalny i bogaty w słowa kluczowe tytuł"

Gdy ktoś korzysta z wyszukiwarki Google, terminy zapytań będą wyświetlane jako pogrubiony tekst w wynikach wyszukiwania. Z tego powodu musisz umieścić w tytule wybrane słowa kluczowe, aby było zauważalne, a tym samym uzyskać więcej kliknięć w witrynie. Oczywiście, aby uzyskać wizytę, tytuł musi również zadowolić odwiedzających, a nie tylko wyszukiwarki. Nie możesz po prostu wymienić słów kluczowych w tytule bez żadnego znaczenia. Zamiast tego pozwól, aby Twoje tagi tytułowe były dokładnymi opisami każdej strony, a będziesz w porządku zarówno dla wyszukiwarek, jak i osób. Nie używaj zbyt długich tytułów, ponieważ wyszukiwarki i tak ją skracają. Zachowaj tytuł poniżej 65 znaków.

Użyj metatagów opisu i słów kluczowych

Meta tagi opisów i słów kluczowych były bardzo ważne dla optymalizacji wyszukiwarek w przeszłości, ale są szeroko wykorzystywane. Dzisiaj tag meta słów kluczowych jest praktycznie bezużyteczny, ale znacznik opisu meta jest nadal ważny. Chociaż nie poprawiłoby to twojej pozycji w wynikach wyszukiwania, jest to korzystne pośrednio. Google często używa metatagu, gdy wyświetla wyniki wyszukiwania poniżej tytułu jako krótki opis Twojej strony. Więc jeśli masz chwytliwy tag z meta opisem, możesz uzyskać więcej odwiedzin, nawet jeśli nie jesteś pierwszy w wynikach wyszukiwania. Ustaw unikalny opis strony dla każdej strony. Podobnie jak tytuł strony, możesz zmienić metatagi w znacznikach lub dynamicznie w kodzie po stronie serwera:

[C #]

chronione void Page_Init (nadawca obiektów, EventArgs e)
{
// Dodaj znacznik opisu meta
HtmlMeta metaDescription = new HtmlMeta ();
metaDescription.Name = "Opis";
metaDescription.Content = "Krótki, unikalny i bogaty opis strony." ;
Page.Header.Controls.Add (metaDescription);

// Dodaj tag słów kluczowych meta
HtmlMeta metaKeywords = new HtmlMeta ();
metaKeywords.Name = "Keywords";
metaKeywords.Content = "selected, page, keywords";
Page.Header.Controls.Add (metaKeywords);
}

[VB.NET]

Protected Sub Page_Init (Nadawca ByVal jako obiekt, ByVal e As System.EventArgs) Obsługuje mnie .Init
„Dodaj tag opisu meta
Dim metaDescription As HtmlMeta = Nowy HtmlMeta ()
metaDescription.Name = "Opis"
metaDescription.Content = "Krótki, unikalny i bogaty opis strony."
Page.Header.Controls.Add (metaDescription)

„Dodaj tag słów kluczowych meta
Dim metaKeywords As HtmlMeta = Nowy HtmlMeta ()
metaKeywords.Name = "Keywords"
metaKeywords.Content = "wybrany, strona, słowa kluczowe"
Page.Header.Controls.Add (metaKeywords)
Napis końcowy

Takie podejście będzie również działać, jeśli używasz stron wzorcowych.

Używanie znacznika H1

Znacznik H1 jest bardzo ważny, ale jednocześnie bardzo łatwy sposób na poprawę pozycji w wynikach wyszukiwania. Najlepiej jest, jeśli tag h1 ma taką samą treść, jak tag tytułowy. Wystarczy umieścić tę samą krótką, trafną, bogatą frazę kluczową zarówno w tagach h1, jak i title, a ten pojedynczy wysiłek znacząco podniesie Twój ranking. Podobnie jak każdy inny znacznik HTML, możesz zmienić znacznik h1 bezpośrednio w znaczniku lub dynamicznie, jeśli dodasz runat = "serwer" i ustaw jego identyfikator, jak w poniższym kodzie:

<h1 runat = "serwer" id = "MyPageHeader" > </ h1>

Teraz możesz manipulować tagiem h1 za pomocą kodu po stronie serwera ASP.NET:

[C #]

MyPageHeader.InnerText = „This Is My Catchy Header”;

[VB.NET]

MyPageHeader.InnerText = "This Is My Catchy Header"

Istnieją również ważne znaczniki <h2> i <h3>, których można używać do nagłówków podrzędnych i tagu <strong>, aby niektóre słowa kluczowe były bardziej znaczące w tekście.

Przekierowanie adresu URL ASP.NET

Czasami musisz przenieść stronę do innego adresu URL lub przenieść całą witrynę do innej domeny. Typowym przykładem jest to, że jeśli aktualizujesz witrynę utworzoną w klasycznej ASP do ASP.NET, musisz zmienić rozszerzenia plików z .asp na .aspx. Jeśli jakiś użytkownik wejdzie na stary link z wyszukiwarki lub bezpośrednio, powinien zostać przekierowany do nowego adresu URL. Istnieją dwa możliwe przekierowania:
1. Tymczasowe przekierowanie, zwraca komunikat „Znaleziono 302”. To przekierowanie powinno być używane tylko wtedy, gdy jest to konieczne, bardzo rzadko w celu optymalizacji wyszukiwarek.
2. Stałe przekierowanie, zwrócona wiadomość to „301 Moved Permanently”. To przekierowanie informuje pająki, że strona lub witryna są przenoszone do innego adresu URL. Służy do SEO, aby przenieść popularność linku na nowy adres.

Response.Redirect zwróci 302 przekierowanie, więc nie może być używane do optymalizacji wyszukiwarek w ASP.NET. Aby przekierować na stałe, użyj kodu takiego jak ten:

[C #]

Response.Status = "301 Moved Permanently";
Response.AddHeader („Location”, „/ your-new-url /”);
Response.End ();

[VB.NET]

Response.Status = "301 Moved Permanently"
Response.AddHeader („Location”, „/ your-new-url /”)
Response.End ()

Ten kod jest wystarczający, jeśli chcesz przenieść jedną stronę. Ale jeśli chcesz przenieść pełną stronę internetową, najlepiej zrobić to w Internet Information Server (IIS). Przejdź do starych właściwości witryny i wybierz kartę Katalog macierzysty . Wybierz „Przekierowanie na adres URL” i napisz nowy adres URL w polu tekstowym poniżej, jak pokazano na obrazku:

Nie zapomnij zaznaczyć pola wyboru „Stałe przekierowanie dla tego zasobu”, aby uzyskać przekierowanie 301. Unikaj używania postbacku

Niektórzy programiści umieszczają formant Button lub LinkButton w formularzu internetowym i używają Response.Redirect, aby przejść do innej strony w zdarzeniu click kontroli. To jest problem, ponieważ formanty ASP.NET używają JavaScript do tworzenia postów. Ponieważ pająki internetowe nie mogą pracować z JavaScriptem, wiele stron nie może być indeksowanych i nie pojawia się w wynikach wyszukiwania. Aby strony internetowe były widoczne dla wyszukiwarek, staraj się unikać korzystania z odsyłaczy. Zamiast przycisków Button lub LinkButton, umieść prosty znacznik <a>. Tekst na linkach powinien być opisowy, unikać bezsensownych linków, takich jak „Czytaj więcej”, „Kliknij tutaj” itd.

Jeśli musisz skorzystać z odsyłacza, podaj alternatywny sposób nawigacji za pomocą prostych, prostych hiperłączy. Można to zaimplementować w formie mapy witryny. Mapa witryny może być stroną zawierającą wymienione linki do wszystkich stron na stronie internetowej. Gdy web spider odwiedza stronę mapy strony, łatwo odnajdzie wszystkie inne strony.

SEO Friendly URLs: Url Rewriting

Pająki internetowe nie lubią parametrów ciągów zapytań w adresach URL. Jeśli pobierasz dane z bazy danych, często używasz łańcucha zapytania, takiego jak ShowProduct.aspx? Id = 23445. Chociaż ten adres URL wygląda logicznie z perspektywy programisty, nie jest przyjazny dla użytkownika i zazwyczaj nie jest dobrze oceniany w wyszukiwarkach. Musisz użyć adresów URL zawierających słowa kluczowe oddzielone myślnikami. Tak więc zamiast /ShowProduct.aspx?id?=23445 powinno być coś takiego jak /My-Product-Name.aspx. Adres URL zawierający słowa kluczowe jest łatwiejszy do odczytania przez użytkowników i jest lepszy w wyszukiwarkach. Ponadto witryna z przyjaznymi dla SEO adresami URL jest bezpieczniejsza, ponieważ można ukryć identyfikator lub nawet rozszerzenie pliku.

Przepisywanie adresów URL w ASP.NET można zaimplementować na wielu poziomach, bezpośrednio na stronie, w Global.asax, przy użyciu niestandardowego modułu HTTP lub programu obsługi HTTP, na poziomie serwera WWW itp.

Przepisywanie adresu URL na stronie to sposób kodowania, ale może być przydatne w niektórych scenariuszach. Na stronie z przyjaznym adresem URL użyj metody Server.Transfer, aby wywołać prawdziwą stronę. Tak więc w tym przypadku musisz mieć w rzeczywistości plik frendly url jako plik i umieścić w nim tylko jedną linię kodu, aby wykonać transfer:

Server.Transfer ("/UnfriendlyPage.aspx?id=423874")

Przepisywanie URL w Global.asax używa metody RewritePath w zdarzeniu Application_BeginRequest. Implementacja może wyglądać następująco:

[C #]

void Application_BeginRequest (nadawca obiektów, EventArgs e)
{
HttpApplication app = (HttpApplication) nadawca;
if (app.Request.Url.AbsolutePath.StartsWith ("http://www.example.com/Friendly-Page/"))
{
app.Context.RewritePath ("/UnfriendlyPage.aspx?id=423874");
}
}

[VB.NET]

Protected Sub Application_BeginRequest (Nadawca ByVal jako obiekt, ByVal e As System.EventArgs)
Dim app Jako HttpApplication = nadawca
If (app.Request.Url.AbsolutePath.StartsWith ("http://www.example.com/Friendly-Page/")) Następnie
app.Context.RewritePath ("/UnfriendlyPage.aspx?id=423874")
Zakończ jeśli
Napis końcowy

Jeśli interesuje Cię przepisanie adresu URL za pomocą modułu HTTP lub sprawdzanie procedury obsługi HTTP Przepisywanie URL w ASP.NET tutorial, w którym wyjaśniono obie metody.

Aby uzyskać szybkie wyniki, możesz spróbować http://urlrewriter.net/ . Jest to darmowy program do redagowania adresów URL dla ASP.NET napisany w języku C #, łatwy w użyciu i używany w wielu dużych i małych witrynach, w tym na tej stronie internetowej.

ViewState i SEO w ASP.NET

Istnieją spekulacje, że wyszukiwarki odczytują tylko ograniczoną liczbę bajtów z każdej strony (pierwsze 100 tys. Stron internetowych). Wartość ViewState to ciąg prezentowany jako ukryte pole po stronie klienta. Jeśli masz duży ViewState na początku strony ASP.NET, to możliwe jest, aby pająki internetowe unikały prawdziwej zawartości. Może to być szkodliwe dla twojego rankingu w wynikach wyszukiwania. Prostym rozwiązaniem jest wyłączenie ViewState, jeśli go nie potrzebujesz, lub przynajmniej nie używanie go dla każdego pojedynczego elementu sterującego. Jeśli naprawdę potrzebujesz ViewState, w web.config pojawiła się nowa opcja umieszczenia jej na dole strony:

<strony renderAllHiddenFieldsAtTopOfForm = "false" />

Podążając za tym samym pomysłem, powinieneś usunąć wszystkie niepotrzebne style HTML, JavaScript i CSS, aby uzyskać mniejszą stronę. Nadal możesz i powinieneś używać JavaScript i CSS tam, gdzie jest to potrzebne, ale dzwoń do nich z zewnętrznego pliku. Zmniejszy to również powtarzalną pracę.

Jednak ta rozmowa o ograniczonym ładowaniu stron to tylko spekulacja, osobiście nie wierzę, że jest to całkowicie prawdziwe. Ale wyszukiwarki z pewnością starają się zadowolić swoich użytkowników i użytkowników, takich jak szybkie strony internetowe. Z tego powodu strony ładujące się szybciej będą miały lepszą pozycję. Czas ładowania jest jednym z czynników rankingowych. Usuwając lub redukując ViewState, usuwając niepotrzebne znaczniki HTML i komentarze HTML, przenosząc JavaScript i CSS do zewnętrznego pliku i pozostawiając na stronie tylko przydatne treści, poprawisz swój ranking zarówno bezpośrednio, jak i pośrednio. Ostateczną rzeczą może być sprawdzenie poprawności wyjścia HTML http://validator.w3.org .

SEO Friendly paging z GridView, Repeater i innymi kontrolkami danych

Domyślne stronicowanie w formantach danych ASP.NET wykorzystuje postback i javascript. Pająki wyszukiwarek sprawdzają linki i zazwyczaj unikają JavaScript, więc używanie domyślnego pager nie jest opcją przyjazną dla SEO. Rozwiązaniem może być użycie niestandardowego stronicowania dla GridView, Repeatera i innych elementów sterujących danymi lub uzyskanie większej liczby opcji i ułatwienie tego zadania przy użyciu naszego Kontrola pagera SEO , specjalizuje się w optymalizacji pod kątem wyszukiwarek i zajmuje się dużymi stołami. Więcej informacji na temat stronicowania w formantach danych ASP.NET można znaleźć w Przywoływanie danych w ASP.NET seminarium.

Nowe funkcje SEO w ASP.NET 4.0

Bezpośrednia manipulacja metaopisami i tagami słów kluczowych

ASP.NET 4.0 ma nowe opcje zmiany metaopisów i meta słów kluczowych. Oczywiście możesz to zrobić w dowolnej starszej wersji programu ASP.NET, dodając runat = "serwer" do metaopisania lub meta tagu słowa kluczowego, a następnie wywołując go z kodu po stronie serwera, sposób ASP.NET 4.0 jest prostszy i szybszy, wprowadza nowe właściwości MetaDescription i MetaKeywords obiektu Page, używane jak w poniższym kodzie:

[C #]

Page.MetaDescription = "To jest moja wspaniała strona";
Page.MetaKeywords = "great, page";

[VB.NET]

Page.MetaDescription = "To jest moja wspaniała strona"
Page.MetaKeywords = "great, page"

Response.RedirectPermanent do stałego przekierowania 301

ASP.NET 4.0 zawiera kolejną ciekawą funkcję SEO. Metoda Response.Redirect zwraca 302 tymczasowe przekierowanie. Aby użyć przekierowania 301 we wcześniejszych wersjach ASP.NET, należy użyć kodu pokazanego w Przekierowanie adresu URL ASP.NET Sekcja. Dzięki ASP.NET 4.0 zadanie to jest prostsze:

[C #]

Response.RedirectPermanent („New-Page.aspx”, true);

[VB.NET]

Response.RedirectPermanent („New-Page.aspx”, true)

Radzenie sobie z www. subdomena

To powszechny problem. Od www. jest tylko subdomeną, wyszukiwarki mogą zobaczyć zduplikowane treści i podzielić reputację między www.example.com/Your-Page.aspx i example.com/Your-Page.aspx. O wiele lepiej jest mieć tylko jeden link na pierwszej stronie niż dwa linki na trzydziestej stronie. Zezwalaj tylko na jeden link do tej samej treści. Jeśli odkryjesz, że odwiedzający mogą przechodzić do tych samych treści przez kilka różnych adresów URL, użyj przekierowania 301, aby skupić wszystkie rankingi na jednym adresie URL.

AJAX i optymalizacja wyszukiwarek

Ajax używa JavaScript, a wyszukiwarki nie lubią JavaScript. Twoja witryna Ajax ma duży potencjalny problem. Bardzo możliwe, że Twoje treści nie zostaną zaindeksowane. Możesz wyłączyć obsługę JavaScript w przeglądarce i próbować uzyskać dostęp do wszystkich treści na stronie. Jeśli nie widzisz go bez JavaScript, pająki też go nie zobaczą.

Możliwe rozwiązania to udostępnienie mapy witryny z łączami do całej zawartości lub dodanie dodatkowego sposobu nawigacji, który używa statycznych łączy, lub udostępnienie treści początkowo bez JavaScript.

Problemy z sesjami SEO

Domyślnie ASP.NET używa plików cookie do przechowywania sesji. Ponieważ pająki internetowe zazwyczaj nie akceptują plików cookie, możliwe jest, że niektóre z twoich treści będą niewidoczne, jeśli wymagane są zmienne sesyjne. Możesz zmienić ustawienia i zapisać sesję w adresie URL (możesz to zrobić w web.config, zmieniając parametr cookieless sesjiState na true), ale jest to jeszcze gorsze, ponieważ popularność łącza zostanie podzielona na wiele różnych adresów URL z duplikatami treści. Istnieje opcja, aby ustawić wartość Cookieless na AutoDetect. Oznacza to, że ASP.NET będzie wykorzystywał pliki cookie, jeśli przeglądarka je obsługuje, więc w kwestiach SEO nie rozwiązuje problemu.

Rozwiązaniem może być ustawienie atrybutu cookieless na false, a także zapewnienie pająkom możliwości znalezienia całej zawartości za pomocą prostych łączy.

Wniosek

Jak widać, bardzo łatwo jest stworzyć stronę ASP.NET, która jest niewidoczna dla wyszukiwarek :). Po prostu użyj przycisków Button lub LinkButton do nawigacji i nikt nie znajdzie Twojej witryny za pomocą wyszukiwarki Google. W przeciwieństwie do tego, aby uzyskać maksymalny ruch z wyszukiwarek, musisz przestrzegać ich zasad i być bardziej przyjaznym dla wyszukiwarek. Mam nadzieję, że dobrze wyjaśniłem podstawy optymalizacji pod kątem wyszukiwarek (SEO) dla strony ASP.NET. Jeśli chcesz dowiedzieć się więcej na ten temat, zwłaszcza jeśli tworzysz komercyjne strony internetowe, sprawdź Profesjonalna optymalizacja dla wyszukiwarek z ASP.NET: Przewodnik dla programistów po SEO (Przewodniki profesjonalne Wrox) Jak widać, bardzo łatwo jest stworzyć stronę ASP książka. Istnieje wiele innych książek, które obejmują optymalizację wyszukiwarek, ale koncentruje się na konkretnych zagadnieniach SEO ASP.NET.

Wreszcie, wszystkie te techniczne wskazówki i triki są nieistotne, jeśli nie masz wysokiej jakości treści w swoim tagu ciała. Jeśli Twoja zawartość jest świetna, ludzie będą naturalnie linkować do Twojej strony. Przychodzące linki z odpowiednich stron są najważniejszym czynnikiem w rankingu. Mam nadzieję, że znalazłeś kilka interesujących pomysłów w tym samouczku. Szczęśliwe kodowanie!

Pasek narzędzi samouczka: Powiedz przyjacielowi | Dodaj do ulubionych | Sprzężenie zwrotne | Google

komentarze zasilane przez

Aspx?
Aspx?
Id?
Aspx?
Aspx?
Aspx?