Routing

In diesem Forum gibt es Starthilfe zum neuen Extension-System von phpBB 3.1/3.2. Fragen zur Entwicklung von Extensions und zur Konvertierung von phpBB 3.0.x MODs sind ebenfalls willkommen.
Antworten
Benutzeravatar
D@ve
Ehemaliges Teammitglied
Beiträge: 3842
Registriert: 28.08.2002 19:33
Wohnort: Bretzfeld
Kontaktdaten:

Routing

Beitrag von D@ve »

Versuche gerade meinen alten verstauben SEO-URL Mod in eine Extension zu verwandeln. Bin immer wieder begeistert wie gut das ohne Code Changes klappt...

Hab das ja bisher immer mit der htaccess gemacht. Aber das mit dem Routing ist für mich noch ein rotes Tuch. Auf phpbb.com wird auf die Symfony Doku verwiesen...
http://symfony.com/doc/2.1/book/routing.html

Wirklich erhellend finde ich das jetzt allerdings nicht...

Das hier ist meine .htaccess:
RewriteCond %{REQUEST_FILENAME} /(.*)-f([0-9]*).html
RewriteRule (.*) ./forum/viewforum.php?f=%2 [L]
RewriteCond %{REQUEST_FILENAME} /(.*)-f([0-9]*)-s([0-9]*).html
RewriteRule (.*) ./forum/viewforum.php?f=%2&start=%3 [L]
RewriteCond %{REQUEST_FILENAME} /(.*)-f([0-9]*)-([0-9]*)-s([0-9]*).html
RewriteRule (.*) ./forum/viewforum.php?f=%2&topicdays=%3&start=%4 [L]
RewriteCond %{REQUEST_FILENAME} /(.*)-t([0-9]*)-([0-9]*).html
RewriteRule (.*) ./forum/viewtopic.php?t=%2&postdays=0&postorder=asc&start=%3 [L]
RewriteCond %{REQUEST_FILENAME} /(.*)-t([0-9]*)-p([0-9]*)-([0-9]*).html
RewriteRule (.*) ./forum/viewtopic.php?t=%2&postdays=%3&postorder=asc&start=%4 [L]
RewriteCond %{REQUEST_FILENAME} /(.*)-t([0-9]*)-p([0-9]*)desc-([0-9]*).html
RewriteRule (.*) ./forum/viewtopic.php?t=%2&postdays=%3&postorder=desc&start=%4 [L]
RewriteCond %{REQUEST_FILENAME} /(.*)-t([0-9]*)(.*).html
RewriteRule (.*) ./forum/viewtopic.php?t=%2&highlight=%3 [L]
RewriteCond %{REQUEST_FILENAME} /(.*)-t([0-9]*)-p([0-9]*)desc.html
RewriteRule (.*) ./forum/viewtopic.php?t=%2&postdays=%3&postorder=desc [L]
RewriteCond %{REQUEST_FILENAME} /(.*)-t([0-9]*)-p([0-9]*).html
RewriteRule (.*) ./forum/viewtopic.php?t=%2&postdays=%3&postorder=asc&start=0 [L]

Wie gieße ich das jetzt in eine yml?

thanks
Dave
There are only 10 types of people in the world: Those who understand binary, and those who don't
Benutzeravatar
tas2580
Ehemaliges Teammitglied
Beiträge: 3029
Registriert: 01.07.2004 05:42
Wohnort: /home/tas2580
Kontaktdaten:

Re: Routing

Beitrag von tas2580 »

So weit ich weiß geht das mit Routing gar nicht da das Routing in phpBB immer die app.php aufruft und somit nur für deine Extension und nicht für schon vorhandene Dateien genutzt werden kann. Auch das Routing müsste einen Eintrag in der htaccess haben da der Webserver keine URLs raten kann. Man muss also auf jeden Fall die Konfiguration des Webservers ändern (beim Apache eben mit htaccess).

Wenn ich mir deine htaccess anschaue übertreibst du es da für meinen Geschmack an manchen Stellen. Ich würde bis auf die normalen URLs und Start nichts umschreiben sondern schaun das die Kanonische URL richtig ausgegeben wird. Wenn du postorder oder topicdays umschreibst und keine Kanonische URL setzt produzierst du ohne Ende doppelten Content. Wenn du eine Kanonische URL setzt brauchst du auch nicht umschreiben.

Ich habe gerade mal in deinem Forum die URLs angeschaut, da ist mir aufgefallen das man den Titel in der URL beliebig ändern kann. Da solltest du auf jeden Fall eine URL Prüfung einbauen die auf die richtige URL per 301 weiterleitet da du sonst wenn ein Thema umbenannt wird oder jemand böse ist und falsch verlinkt wieder doppelten Content hast. Wenn man da nicht aufpasst wird aus einem SEO Mod ganz schnell ein anti SEO Mod.

Gruß Tobi
Heute ist ein guter Tag um dein Forum zu testen.
Ehemaliger Benutzername: [BTK] Tobi
Benutzeravatar
D@ve
Ehemaliges Teammitglied
Beiträge: 3842
Registriert: 28.08.2002 19:33
Wohnort: Bretzfeld
Kontaktdaten:

Re: Routing

Beitrag von D@ve »

Wenn ich mir deine htaccess anschaue übertreibst du es da für meinen Geschmack
Achso... Das ist schade. Hmmmm... Also doch htaccess. Dann muss ich versuchen über die migrations eine .htaccess anzulegen und zu befüllen.
Wenn ich mir deine htaccess anschaue übertreibst du es da für meinen Geschmack
Ja, ich weiß... Da war ich noch jung und hübsch :D. Das ist Stand 2007
There are only 10 types of people in the world: Those who understand binary, and those who don't
Benutzeravatar
nickvergessen
Ehrenadmin
Beiträge: 11559
Registriert: 09.10.2006 21:56
Wohnort: Stuttgart, Germany
Kontaktdaten:

Re: Routing

Beitrag von nickvergessen »

Das Problem auf das du hier stößt ist,
dass phpBB selbst noch keine Controller verwendet.
In der Theorie würdest du sowas erstellen, wie z.B.:

Code: Alles auswählen

seomod_viewforum_controller:
    pattern: /{forum_name}-f{forum_id}.html
    defaults: { _controller: phpbb.viewforum.controller:show }
    requirements:
        forum_id: \d+
Allerdings gibt es phpbb.viewforum.controller noch nicht, daher musst du den Rewrite auf viewforum.php machen.
kein Support per PN
Benutzeravatar
D@ve
Ehemaliges Teammitglied
Beiträge: 3842
Registriert: 28.08.2002 19:33
Wohnort: Bretzfeld
Kontaktdaten:

Re: Routing

Beitrag von D@ve »

Schade... Aber immerhin habe ich jetzt ein bisschen mehr verstanden...

Was gibt es denn dann überhaupt für Möglichkeiten, damit der Mod "valide" wird? Soweit ich das verstanden habe, werden die ja nur akzeptiert, wenn keine Files außerhalb des extension folders benötigt werden, oder?

Gruß, Dave
There are only 10 types of people in the world: Those who understand binary, and those who don't
Benutzeravatar
nickvergessen
Ehrenadmin
Beiträge: 11559
Registriert: 09.10.2006 21:56
Wohnort: Stuttgart, Germany
Kontaktdaten:

Re: Routing

Beitrag von nickvergessen »

D@ve hat geschrieben:Soweit ich das verstanden habe, werden die ja nur akzeptiert, wenn keine Files außerhalb des extension folders benötigt werden, oder?
Richtig
D@ve hat geschrieben:Was gibt es denn dann überhaupt für Möglichkeiten, damit der Mod "valide" wird?
In dem Fall kann man wohl nicht all zu viel machen, außer wenn man gewillt ist, die komplette viewforum.php auf einen controller um zu arbeiten.
kein Support per PN
Benutzeravatar
D@ve
Ehemaliges Teammitglied
Beiträge: 3842
Registriert: 28.08.2002 19:33
Wohnort: Bretzfeld
Kontaktdaten:

Re: Routing

Beitrag von D@ve »

In dem Fall kann man wohl nicht all zu viel machen, außer wenn man gewillt ist, die komplette viewforum.php auf einen controller um zu arbeiten.
Das ist wahrscheinlich nix, was in einem 3.1.x Release kommen wird, oder?
There are only 10 types of people in the world: Those who understand binary, and those who don't
Antworten

Zurück zu „Extension Bastelstube“