Archiwum - [gotowa modyfikacja] Spider Friendly - poprawki i odmulanie
tosiek - 01-03-2009, 14:16
miszko, zależnie od ilości postów, ale jest szybsze niz wczytywanie w plików
Centurion, masz zamiar jeszcze może poprawiać Spider Friendly ? Bo wątpię żeby Crack rozwijał jeszcze SF (na 99% nie), bo jeśli byś chciał poprawić to bym miał propozycję błędów do naprawy
They2 - 01-03-2009, 15:02
Centurion, kontaktowales z Crackiem o tej poprawce do SF ?
bo widze ze nadal nie odzywa a byl tu na forum kilka dni temu.
MagicalFire - 01-03-2009, 15:37
tosiek napisał/a: | Bo wątpię żeby Crack rozwijał jeszcze SF |
dokładnie
widać ze Crack albo nie ma chęci albo czasu
Centurion - 01-03-2009, 19:09
No właśnie się nie odezwał, więc postaram się trochę naprawić tego moda. Zamierzam zrobić wersję która albo będzie trzymała wygenerowany adres w bazie albo robiła go w locie ale tylko tam gdzie trzeba, to co jest teraz, czyli tworzenie listy wszystkich tematów i zapisywanie ich do cache za każdym razem jest bardzo niewydajne przy 2000 i więcej tematach i potrafi rozwalić nawet dedyka (dokładniej: includowanie wielkich plików cache z tematami). Moje rozwiązanie też nie jest genialne bo obciąża bazę, nieporównywalnie mniej ale jednak, a tak naprawdę do przepisywania linków jest to zupełnie niepotrzebne.
Niestety nie mogę powiedzieć kiedy to będzie zrobione, gdyż u mnie z czasem cienko... Poza tym być może trzeba będzie zmienić naprawdę bardzo dużo rzeczy w kodzie jako że wszystko leci przez append_sid().
tosiek, możesz pisać w tym temacie
Anonymous - 02-03-2009, 21:21
Mod spisuje się świetnie, forum wyraźnie przyśpieszyło
Byłoby super, gdyby poprawiony był cały mod.
EDIT:
A czy trzeba coś zmieniać w ustawieniach wtyczki, cache itp?
Centurion - 02-03-2009, 21:52
Nie, nie trzeba nic zmieniać w ustawieniach.
Zabrałem się za poprawianie moda wg mojej wersji ale jest sporo kłopotów. Jak już wspomniałem wszystkie linki idą przez append_sid w includes/sessions.php i crack to rozwiązał w ten sposób że generował (w cache) osobno listy tematów, for, tematów w forach i postów w tematach (co okazało się zabójcze dla for z dużą ilością tematów przez wielkość includowanych plików z cache). Aby to obejść trzeba by do append_sid dodac dodatkowe parametry jak np do każdego linka z viewtopic - tytul tematu, id tamtu i id forum w ktorym jest ten temat. Ogólnie jest to do zrobienia mimo iż jest to naprawdę wiele zmian w plikach. Największym problemem są inne modyfikacje, bo w nich też trzeba by przepisywać linki append_sid a każda z modyfikacja takie linki ma. Najgorsze że praktycznie nie ma innej możliwości ale zdaję sobie sprawę że dużo ludzi się nie połapie, chociaż oczywiście można zrobić to tak że nawet w przypadku braku parametrów linki będą prowadzić pod właściwe adresy, mimo iż będą inne niż te które ja wprowdzę w czystym skrypcie z przerobionym spider friendly.
Ale z przepisywaniem linków w locie bez cachowania jest o wiele wydajniej.
Dodatkowo będą też przepisywane link do profili użytkowników, kategorii i grup.
Nie wiem muszę jeszcze nad tym pomyśleć ale nie wiem czy coś bardziej sensownego wymyśle .
tosiek - 02-03-2009, 22:07
Centurion napisał/a: | tosiek, możesz pisać w tym temacie |
Ok to kolejny błąd przy przepisywaniu ze słowami kluczowymi, to taki że po napisaniu tematu nie nadąża przepisać linku do tematu i wywala takie coś:
Kod: | http://bb2.tosiek.pl/tematy5/-vt12.htm |
Brakuje redirecta 301 z innych adresów z których się nie korzysta jeśli jest zainstalowany Spider Friendly
Czyli caly czas działa:
Kod: | http://bb2.tosiek.pl/tematy5/12.htm
http://bb2.tosiek.pl/viewtopic.php?t=12
http://bb2.tosiek.pl/12.htm |
Oraz inne adresy z których się nie korzysta, ktore sa przepisywane przez SF
Brakuje też sporo description i keywordsów w meta na wileu stronach dostepnych publicznie
Tutaj linki do błędów które daawno temu pisałem:
http://www.przemo.org/php...p=367917#367917
I blokowanie następny temat i poprzedni adresów w temacie
Zobacz tu:
http://www.phpbb-seo.com/
Jest coś nawet pod phpBB2 ale nie miałem okazji testowac, ale zapowiada się jak pod bb3
dla phpBB3 jest idealny phpbbseo, zwłaszcza advaced rewrite + zero duplicate + no duplicate, i przy okazji przekierowuje z błędnych
Centurion - 02-03-2009, 22:16
Kod: | Ok to kolejny błąd przy przepisywaniu ze słowami kluczowymi, to taki że po napisaniu tematu nie nadąża przepisać linku do tematu i wywala takie coś: |
To akurat normalne bo ten cache się czyści i generuje dopiero przy nastepnym wejściu. W mojej 'przyszłej' wersji tego nie ma bo linki nie są przetwarzane z cache (w tej poprawce teraz chyba też nie o ile dobrze pamiętam). Przynajmniej jeśli masz ustawione regenerowanie po napisaniu posta a nie okresowe.
Co do prev i next to fakt że się indeksują, tak samo jak w normalnym skrypcie zresztą i powstają kopie tych samych tematów. Ale link do tematu (?t=) i do posta w tym temacie (?p=) też w zasadzie otwierają tę samą stronę. Więc chyba to zostawię tak jak jest.
Jeśli chodzi o przekierowanie 301 to ono jest, w includes/spider_firendly.php
tosiek - 03-03-2009, 08:24
Moze i jest 301 ale nie działa. Działa chyba tlyko na adresy z sid.
Jak dla mnie linki do postów dla botów można by było zlikwidować, bo duplicate content się robi
Anonymous - 03-03-2009, 09:12
U mnie redirect z np.
viewtopic.php?t=X
na
slowa-kluczowa-vt38.htm
też nie działa. Google ma już stare zindeksowane, więc będzie tak jak pisał tosiek, duplicate content.
@Tosiek, jest i advanced seo pod phpbb2:
http://downloads.phpbb-se...-rewrite-5.html
Ciekawe jak z wydajnością.
Centurion - 03-03-2009, 11:53
do postów zamienia
Kod: | centurion@centurion:~> wget http://www.sadistic.pl/viewtopic.php?p=12111
--2009-03-03 11:44:46-- http://www.sadistic.pl/viewtopic.php?p=12111
Translacja www.sadistic.pl... 94.23.0.190
Connecting to www.sadistic.pl|94.23.0.190|:80... połączono.
Żądanie HTTP wysłano, oczekiwanie na odpowiedź... 301 Moved Permanently
Lokalizacja: http://www.sadistic.pl/jak-nie-uwalniac-leoparda-vt7574.htm#12111 [podążanie]
--2009-03-03 11:44:46-- http://www.sadistic.pl/jak-nie-uwalniac-leoparda-vt7574.htm
Reusing existing connection to www.sadistic.pl:80.
Żądanie HTTP wysłano, oczekiwanie na odpowiedź... 200 OK
Długość: nieznana [text/html]
Saving to: `jak-nie-uwalniac-leoparda-vt7574.htm'
[ <=> ] 40.322 248K/s in 0,2s
2009-03-03 11:44:47 (248 KB/s) - `jak-nie-uwalniac-leoparda-vt7574.htm' saved [40322] |
do tematów ?t= faktycznie nie, ale myślę że to się da zrobić
Lukasamd napisał/a: | @Tosiek, jest i advanced seo pod phpbb2: |
To działa mniej więcej tak jak jedna z moich prób przepisywania adresów, jednakże to rozwiązanie w przypadku Przemo wymagałoby dużo więcej zmian w kodzie no i byłyby problemy w miejscach gdzie np: do templatki idą linki z append_sid w tabeli, trzeba by każdy link wyciągać przez tę tabelę.
Ogólnie jak wspomniałem największy problem nie jest ze skryptem tylko z dodatkowymi modami w których też trzeba by zmieniać te fragmenty z przepisywaniem.
Ja staram się na dodatek zachować wszystkie funckjonalności Crackowego SF czyli przepisywanie linków do postów na linki do tematów i wirtualne katalogi, co np. wymaga żeby wraz z liniiem do postu wydobywać: id tematu, id forum i nazwe tematu za każdym razem. Dlatego też część zapytań będzie musiała zostać zmieniona w samym skrypcie (niewiele 2-3) a także w modach których używacie, albo będą tam działające, ale nie te same co na forum, linki do postów/tematów.
Szybki fix na przekierowanie tematów z ?t= do przepisanego:
Kod: | #---[ OTWÓRZ ]---
viewtopic.php
#---[ ZNAJDŹ ]---
//
// Is user watching this thread?
#---[ PRZED TYM DODAJ ]---
if (strpos($_SERVER['REQUEST_URI'], 'viewtopic.') !== false && ((isset($topic_id) && $topic_id) || preg_match('#t=(\d+)#', $_SERVER['REQUEST_URI'], $topic_id)))
{
redirect(append_sid("viewtopic.$phpEx?" . POST_TOPIC_URL . '=' . $topic_id . ($start > 0 ? "&start=$start" : ''), true) . '#' . $topic_id, 301);
} |
$kubi - 03-03-2009, 15:02
Przepraszam, że się wtrącę w temat. Centurion, jak skończysz i dopieścisz tą modyfikację to zamieścisz ją gotową z wszystkimi potrzebnymi instrukcjami? Nie bede teraz wgrywal skoro jeszcze jest ona w fazie testów/usprawnień.
Centurion - 03-03-2009, 15:19
$kubi, to co jest w tym temacie to tylko przejściowe rozwiązanie aby rozwiązać krytyczny problem na dużych forach. Jak dokończe moją wersję do będą w niej wszystkie potrzebne pliki i instrukcje zarówno z przejścia między standardowym sf do mojego jak i czystą nową instalacją. Cierpliwości.
Dobra wiadomość jest taka że wymyśliłem prosty system przepisywania zamiast obecnego, który na dodatek nie będzie wymagał aż tak wielu zmian w plikach jak mi się wydawało Mianowicie będą tworzone w locie tablice dla tematów, postów, forów, katogorii, użytkowików oraz grup (te rzeczy bedą przepisywane) ale tylko tam gdzie to potrzebne (to czego aktualnie potrzebuje dany plik). To powinno być najefektywniejsze rowiązanie.
tosiek - 03-03-2009, 16:42
Centurion napisał/a: | To powinno być najefektywniejsze rowiązanie. |
W czy w razie edycji tematu link zostanie od razu zmieniony ? (czyszczenei cache, podmiaan w sql)
Centurion - 03-03-2009, 18:38
tosiek napisał/a: | W czy w razie edycji tematu link zostanie od razu zmieniony ? (czyszczenei cache, podmiaan w sql) |
Zostanie zamieniony od razu, mod nie będzie już korzystać ani z cache ani z sql
No więc zakończyłem przerabiać, własnie testuje u siebie na forum http://www.sadistic.pl
Rezultat narazie taki że wszystko chyba działa i cas generowania strony się zmniejszył, no i to jedno zapytanie z tej powyższej poprawki odeszło.
Dopóki sie nię upewnię że wszystko jest ok nie wydam tego oficjalnie.
|
|
|