SEO przy zmianie domeny bloga

To ostatni wpis nawiązujący do Blox, przynajmniej techniczny, bo być może pojawi się jeszcze jeden o tym, jak Agora ma w głębokim poważaniu wolność słowa (określając to górnolotnie) i że ważniejsze jest parę złotych.

Po przeniesieniu bloga, o którym nieco pisałem, przyszedł czas na przeniesienie pozycjonowania w Google w nowe miejsce, czyli zabawę z SEO, aby ludzie wchodząc z wyszukiwarki trafiali w nowe miejsce. Przyznaję, że motywację miałem nikłą – nie zarabiam na wejściach, bo ani nie służy on do sprzedaży produktu, ani nawet nie ma podpiętych innych, pośrednich form zarobku.

Po przeniesieniu treści postanowiłem poczekać. Zwyczajnie i po prostu, nie robiąc nic, poza daniem informacji Google, że blog jest i jak interpretować zawarte na nim dane. Zresztą akurat miałem co innego na głowie. Znaczy ograniczyłem się do wypełnienia Data HighliterWebmaster Tools. Stan taki trwał jakiś miesiąc albo dwa.

Z braku kontroli nad nagłówkami pomysł przekierowania w nowe miejsce przy pomocy kodu odpowiedzi 301 odpadł w przedbiegach, choć to najprostsza, automatyczna i zalecana – także z punktu widzenia SEO – forma przekierowania ruchu w nowe miejsce.

Trochę czasu minęło, ilość wejść na nową lokalizację była szczątkowa, choć miałem nadzieję, że Google zacznie ogarniać sytuację samodzielnie. Niestety tak się nie stało, więc postanowiłem zacząć działać, choć miałem świadomość, że to praca, która się nie automatyzuje. Pierwsze co przyszło mi do głowy, to ustawienie link canonical dla wybranych, najczęściej odwiedzanych wpisów z nową lokalizacją jako celem. I tu okazało się, że Blox przewidział sytuację i… stosowne elementy HTML znikają po dodaniu ich w edycji źródła[1].

Z braku lepszych pomysłów dodałem w najpopularniejszych wpisach namiar na nowe miejsce, poprawiłem też linki do bloga w większości miejsc, gdzie były one umieszczone i… postanowiłem jeszcze poczekać. Poczekałem kwartał, ale nie wydarzyło się nic specjalnego. Statystyki wg Webmaster Tools wyglądały na koniec kwartału następująco:

ostanie 28 dni: impr: 2250, CTR 0,84%, avg pos 33,7. 130 wizyt

Delikatnie mówiąc szału nie ma.

Postanowiłem więc podziałać inaczej. Skoro nie mogę przekierować wyszukiwarki Google, to postanowiłem przekierować przynajmniej żywych ludzi, licząc, że Google w jakiś sposób to zauważy i odpowiednio zinterpretuje. Skoro nic nie działa, to co zadziała na pewno i czego nie można zablokować? Oczywiście JavaScript. Malware korzystający z niego ma się dobrze dzięki obfuskacji, zablokować całkowicie wykorzystania JS na stornie nie bardzo można, bo masa funkcjonalności z niego korzysta. Użyłem następującej wersji przekierowania z jednej lokalizacji na drugą (dla najpopularniejszych wpisów):

<script>
window.location.replace('https://zakr.es/blog/2017/09/goodbye-yanosik/');
</script>

Oczywiście powyższy JS był tylko w odpowiadającym wpisie na starym blogu, a URL w skrypcie to URL na nowym blogu.

Zadziałało nadspodziewanie dobrze. Nadspodziewanie, bo przy wejściu na URL kategorii zawierającej wyświetlany wpis z przekierowaniem, także przekierowywało. Co gorsza przekierowywało przy wejściu na stronę główną, bo także znalazł się tam wpis z przekierowaniem. Może i więcej ruchu przez to, ale niezupełnie o to chodziło i mało to precyzyjne… Dla wpisów z głównej dokonałem więc stosownej korekty w stylu:

<script>
var stringPathName = window.location.pathname;
if (stringPathName == "/2018/02/Waze-jako-nawigacja.html") {
  window.location.replace('https://zakr.es/blog/2018/02/waze-jako-nawigacja/');
}
</script>

Poczekałem miesiąc, wyniki w statystykach były zauważalne, zacząłem więc dodawać tego typu przekierowania dla kolejnych, popularnych linków. Po dwóch miesiącach od dodania przekierowań w JS, wyniki wyglądały następująco:

28 dni: impr: 10450, CTR 4,46%, avg pos 18.8, 490 wizyt

Jak widać wzrost wszędzie. Uznałem, że jest sukces, zacząłem – dla pewności – usuwać większość treści wpisów na starym blogu. Nie było negatywnego wpływu, nastąpił nawet dalszy, równie znaczący wzrost wskaźników, choć zakładam, że wynika on po prostu z upływu czasu.

Największym zaskoczeniem jest dla mnie, że Google przy pozycjonowaniu uwzględnia JS do tego stopnia. Wiedziałem, że radzi sobie z treścią w JS i umie odczytać URLe, ale w tym przypadku wygląda, że poprawnie interpretowany jest fakt przekierowania.

Co można było zrobić lepiej lub inaczej? Całość działań można było zamknąć w mniej niż dwa miesiące, gdybym od razu wiedział co robić i działał zdecydowanie. Oczywiście lepsze efekty byłyby, gdyby zmiany dotyczyły wszystkich wpisów, ale jest to żmudna, ręczna praca, której poświęcałem kilka minut dziennie przy porannej kawie. Powyższy sposób przekierowania nie jest jedynym dostępnym w JS, miałem w planach sprawdzenie różnych, ale ten sprawdziłem jako pierwszy i zadziałał powyżej oczekiwań, więc nie testowałem innych.

Na koniec jeszcze garść cyferek. Ingerowałem ręcznie w ww. sposób w 40 wpisów. Wg Matomo nowy blog ma obecnie ok. 4-5 razy większą ilość wizyt, niż stary. Czyli ładny podział zgodnie z zasadą Pareto.

Co dalej? Dodawanie przekierowań w kolejnych wpisach i usuwanie z nich treści. Ostatecznie pewnie usuwanie przekierowanych wpisów, ale póki co nie mam na to ciśnienia.

[1] Tu zniknęła moja wątpliwość w celowość działań Blox w celu przywiązania użytkowników do swojej platformy. Przypominam: technicznie mają kontrolę nad nagłówkami i domeną – to jakby naturalne i cena za korzystanie ze współdzielonej platformy. Do tego wyłączyli parę lat temu – rzekomo tymczasowo – API. Ale jak widać dodatkowo jeszcze celowo ingerują w treść HTML.

Wrocław (Hala Stulecia)

Zupełnie na przyczepkę w trakcie urlopu, którego głównym punktem było wrocławskie zoo było w planie krótkie zwiedzanie Ogrodu Japońskiego oraz Hali Stulecia. W obu przypadkach zakończone porażką – pierwszy z obiektów nie jest dostępny do zwiedzania od końca października, choć z zewnątrz wygląda akceptowalnie. Bonusowo: całą drogę były drogowskazy, o godzinach otwarcia można się dowiedzieć dopiero po dotarciu na miejsce. Nie jest to problem, bo to raptem kilkaset metrów, a trasa ładna, ale koncepcyjnie fail.

Zwiedzanie Hali Stulecia wewnątrz było niemożliwe z powodu trwającej próby do przedstawienia. Na osłodę obejrzeliśmy z zewnątrz oraz ciekawą wystawę poświęconą Hali Stulecia. Co ciekawe, nadal widoczne są kompleksy(?) związane z niemieckim, militarnym charakterem Hali. Nie tylko na wystawie, która okres nazizmu podczas II WŚ pomija na filmie dosłownie jednym zdaniem, ale również na Wikipedii, gdzie wersja polska mówi jedynie o układzie hali i krzyżu greckim:

Układ hali jest w rzucie kolisty, oparty symetrycznie na greckim krzyżu, na którego trzech końcach znajdują się małe hale wyjściowe, a na zachodnim, skierowanym w stronę centrum miasta – dwupoziomowa owalna hala wejściowa.

Natomiast wersja angielska wspomina już o motywie Żelaznego Krzyża na sklepieniu.

Photos taken looking up at the centre of the structure without the fabric covering clearly show the Iron Cross motif.

Czy to nadinterpretacja? Niekoniecznie, bo odznaczenie to zostało ustanowione właśnie w okresie upamiętnionym powstaniem hali. Nieźle oddaje to zdjęcie linkowane przez Wikipedię:

hala stulecia wnetrze
Źródło: http://4.bp.blogspot.com/-CNG4fQkG0k8/Ue-1V0wPnbI/AAAAAAABEeI/KuXdT02PUCQ/s1600/hala+stulecia+wnetrze.jpg

Z drugiej strony ciężko zrobić sklepienie z ośmioma żebrami, które nie będzie się – przy minimalnym wysiłku – z krzyżem kojarzyć.

Warto o tym wiedzieć, bo ciekawie jest oglądać zdjęcia z okresu PRL z różnymi elementami zasłaniającymi sklepienie – wygląda, że wtedy również raczej doszukiwano się nawiązującej do Żelaznego Krzyża interpretacji.

Gdyby ktoś z czytelników miał wrażenie deja vu, to tak, poprzedni wpis podzieliłem na dwa.

Wrocław (zoo)

Korzystając z zalegającego urlopu oraz sprzyjającej prognozy pogody postanowiliśmy odwiedzić Wrocław. W zasadzie wypad stał pod znakiem zoo, ale nieco miasta liznęliśmy.

Coś mi się kołatało w głowie, że Wrocław to korki i słabo się po nim jeździ samochodem. Co prawda początki z Poznaniem miałem takie, że stwierdziłem, że auto w nim to nieporozumienie, więc liczyłem, że może być tylko lepiej, ale… chyba nie jest lepiej. Mimo dnia powszedniego i jazdy poza szczytem, korki gdzieniegdzie były. Kierowcy jeżdżą raczej agresywnie – kilka stłuczek plus częste klaksony. Wolę nie sprawdzać jak to wygląda w godzinach szczytu. Na szczęście tramwaje jeżdżą często i nie trzeba się przejmować biletami – wszystkie tramwaje, którymi jechaliśmy mają kasowniki zintegrowane z czytnikiem kart płatniczych, czyli nie trzeba kupować żadnej karty PEKA czy biletów, można płacić bezpośrednio. Bilety są na przejazd i czasowe.

Na zwiedzanie wrocławskiego zoo warto sobie zaplanować cały dzień.  Teren nie jest tak rozległy, jak w Poznaniu, ale atrakcji jest wiele. Chodziliśmy ile sił starczyło, czyli od 10:00 do 15:30. Pogoda też dopisała – niby listopad, ale warunki raczej jak we wrześniu – i w miarę ciepło, i trochę słońca. Dodatkowo poza sezonem we wrocławskim zoo było raczej niewielu ludzi, co oznacza spokój i dobry dostęp do wszystkiego. Znaczy idealnie.

Afrikarium wypadło bardzo dobrze. Co prawda spotkałem się z opiniami, że przereklamowane, ale IMO robi robotę. I to nawet nie sam tunel, ale już same szyby umożliwiające zajrzenie pod wodę są rewelacyjne. Zaskoczyła mnie głębokość zbiorników – do tej pory spotkałem się z podglądem powiedzmy 1-1,5 metra od lustra wody, natomiast tu szyby znajdują się znacznie głębiej – stawiałbym na ok. 3 metry. Efekt jest rewelacyjny, zarówno jeśli chodzi o ryby, jak i inne zwierzęta – kotiki i manaty też wyglądają ciekawie. W ogóle jeśli chodzi o „foki”, to oglądanie ich tylko z góry, jak w poznańskim zoo jest w porównaniu zwyczajnie słabe. I ponownie podkreślę, że brak tłumu przy szybach zdecydowanie poprawia efekt i odbiór, więc warto tę część zoo zwiedzać poza sezonem lub w odpowiednich, mało tłocznych godzinach. Przykładowy pingwin:

pingwin we wrocławskim zoopingwin we wrocławskim zoo
Źródło: fot. własna

Jeszcze jedna rzecz – karmienie zwierząt. Samodzielnie zwierząt nie można karmić (wyjątkiem są pawiany i automat z odpowiednią karmą), natomiast są podane godziny podawania posiłków. Harmonogram był napięty, więc generalnie odpuściliśmy, albo – jak w przypadku rekinów – nie trafiliśmy, bo karmienie nie jest codziennie, natomiast byliśmy na karmieniu kotików i… bardzo je polecam. Spodziewałem się co prawda jakiejś interakcji, natomiast to co zobaczyłem to był praktycznie cyrkowy pokaz.

Nieuchronnie pojawia się pytanie czemu zoo ma służyć. Z jednej strony rozrywka dla zwiedzających, z drugiej strony jest to miejsce, gdzie zwierzęta po prostu żyją. Niektóre bez szans na inną egzystencję, bo w środowisku naturalnym gatunek przestaje występować. We wrocławskim zoo aspekt ten jest podkreślany przez wszechobecne tablice dotyczące stanu zagrożenia gatunku i powodu wymierania. Jeśli chodzi o rozrywkę dla zwiedzających, wrocławskie zoo wygrywa zdecydowanie, jeśli zaś chodzi o warunki dla zwierząt, wydaje mi się, że poznańskie jest lepsze. Po prostu zwierzęta mają więcej przestrzeni.

gnu we wrocławskim zoo
Źródło: fot. własna

Szczególnie dotyczy to starej części wrocławskiego zoo. W pamięci utkwił mi pawilon szympansów, z grubymi kratami. Jeden z szympansów darł się rozdzierająco i kiwał w przód i tył, następnie urządził bieg przez różne klatki, trzaskając kratami (są otwierane). Skojarzenia z więzieniem lub raczej szpitalem psychiatrycznym pogłębiała wystawa prac szympansów w postaci rysunków. Zdaję sobie sprawę, że zamysł wystawy był pewnie inny, a ja mogę źle interpretować zachowanie szympansów. Zdecydowanie lepiej jednak oglądało się zwierzęta pływające w przestronnych basenach czy na dużych wybiegach.

Z innych rzeczy – udało się zaliczyć wyspy na Ostrowie Tumskim wieczorową porą, ładnie podświetloną katedrę i trochę rynek. Bardziej przy okazji posiłków, niż zwiedzając, ale było na co popatrzeć – gdybym miał określić jednym słowem, to Wrocław prezentuje się przyjemnie. Wydawało mi się, że Poznań się poprawił, ale po latach, architektonicznie, jako miasto Wrocław przemawia do mnie nadal znacznie bardziej. Zwiedzanie krasnali odpuściliśmy – co prawda kilka znaleźliśmy, ale bez nastawiania się na nie.

Część dotyczącą Hali Stulecia przenoszę do kolejnego wpisu. Dodałem zdjęcia robione smartfonem. Wiem, fatalnie wychodzą, ogólnie aparat to pięta achillesowa tego modelu. Raczej ze względu na RMSowy kontekst robione i dodane. 😉

Chromium w Debianie unstable nie startuje

Gdyby komuś w Debianie unstable przestało działać chromium, a przy uruchomieniu polecenia w konsoli pokazywało się coś takiego:

$ chromium 
[4278:4278:1113/085947.509811:FATAL:zygote_host_impl_linux.cc(116)] No usable sandbox! Update your kernel or see https://chromium.googlesource.com/chromium/src/+/master/docs/linux_suid_sandbox_development.md for more information on developing with the SUID sandbox. If you want to live dangerously and need an immediate workaround, you can try using --no-sandbox.
#0 0x562ca49ba9ee <unknown>
#1 0x562ca492699c <unknown>
#2 0x562ca55b8f90 <unknown>
#3 0x562ca45f9365 <unknown>
#4 0x562ca45fe5ce <unknown>
#5 0x562ca45f7e5a <unknown>
#6 0x562ca2d09e95 ChromeMain
#7 0x7fbb5a4f6b17 __libc_start_main
#8 0x562ca2d09d3a _start

Received signal 6
#0 0x562ca49ba9ee <unknown>
#1 0x562ca49b9433 <unknown>
#2 0x562ca49ba965 <unknown>
#3 0x7fbb633dc8e0 <unknown>
#4 0x7fbb5a509f3b gsignal
#5 0x7fbb5a50b2f1 abort
#6 0x562ca49ba905 <unknown>
#7 0x562ca4926a76 <unknown>
#8 0x562ca55b8f90 <unknown>
#9 0x562ca45f9365 <unknown>
#10 0x562ca45fe5ce <unknown>
#11 0x562ca45f7e5a <unknown>
#12 0x562ca2d09e95 ChromeMain
#13 0x7fbb5a4f6b17 __libc_start_main
#14 0x562ca2d09d3a _start
r8: 0000000000000000 r9: 00007ffe7d2f0920 r10: 0000000000000008 r11: 0000000000000246
r12: 00007ffe7d2f0da0 r13: 00007ffe7d2f0f60 r14: 000000000000016b r15: 00007ffe7d2f0ba0
di: 0000000000000002 si: 00007ffe7d2f0920 bp: 00007ffe7d2f0b70 bx: 0000000000000006
dx: 0000000000000000 ax: 0000000000000000 cx: 00007fbb5a509f3b sp: 00007ffe7d2f0920
ip: 00007fbb5a509f3b efl: 0000000000000246 cgf: 002b000000000033 erf: 0000000000000000
trp: 0000000000000000 msk: 0000000000000000 cr2: 0000000000000000
[end of stack trace]
Calling _exit(1). Core file will not be generated.

to sprawa jest znana, błąd jest zgłoszony i wystarczy doinstalować pakiet chromium-sandbox.