Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] router na przykładzie apple.com, tsntan cardiff
-Zxcy-
post
Post #1





Goście







Czy ktoś może orientuje się jak jest zaprogramowany ruter witryny apple.com?

Domyślam się że wszytko idzie przez index.php, sprawdza czy pierwsze 2 znaki, to nie język w URI i właśnie co dalej... Jak działa ten mechanizm że kontroler wie iż /macos/ to osobna strona, a później /macos/safari/ to jej podstrona?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
thek
post
Post #2





Grupa: Moderatorzy
Postów: 4 362
Pomógł: 714
Dołączył: 12.02.2009
Skąd: Jak się położę tak leżę :D




@Zxcy: reguła w stylu (a-z0-9).html jest delikatnie mówiąc chybiona. Czemu? Ponieważ łapie większość url-i strony, stąd coś takiego jak "kategoria" lub jakiekolwiek inne słowo jest w zasadzie konieczne, bo inaczej zmuszasz serwer do pchania niemal wszystko przez jeden moduł. A od tego masz właśnie router, czyli niejako dublowałbyś jego pracę. Tego typu rzeczy właśnie router na podstawie sensownych reguł wykonuje. Dlatego tworzy się zazwyczaj regułę ze słowem, generującym ciąg ładny dla SEO, czyli w przypadku kategorii choćby:
/oferty/marketingowe/inne/wojewodztwo_slaskie/3/ co skieruje router na moduł odpowiedzialny za oferty, które są w kategorii "marketingowe" i subkategorii "inne" a dodatkowo jest to strona 3 tychże z wojewodztwa śląskiego. Takie mniej więcej jest tego rozwinięcie i tak powinno to działać, dlatego by_ikar ma rację. Zauważ, że taka reguła jak jego niemal cały ruch url-i kieruje na modul: article i akcje read. A co z innymi modułami? Jak one miały by być łapane? Pomyślałeś o tym? (IMG:style_emoticons/default/wink.gif) Może być tak, że faktycznie pierwszy człon jest kontrolerem i główną kategorią, ale i tak dubluje on zadania routera, gdyż musi znać całą hierarchię swoich potomków by przez nie sobie przejść i sprawdzić wszystko, co jest IMHO głupotą, bo wymusza niepotrzebne redirecty/forwardy wewnątrz serwisu w razie błędnych url-i. To już powinien załatwiać router bazowo. Z tego powodu Wordpress jest jednym z najgłupszych skryptów masowo używanych. To, że zarżyna serwer gdy ludzie palną w seo-friendly url %postname%.html jest jednym z takich kwiatków, które wołają o jakąś krucjatę (IMG:style_emoticons/default/smile.gif) Zdebuguj sobie co robi Wordpress z bazą w każdym przejściu wtedy to Ci gałki na wierzch wyjdą.
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 6.10.2025 - 20:26