registrieren registriertes Mitglied


Anzeige

Anzeige

Verzweifle an rewrite_rule für phpBB

Hier kannst Du Deine Fragen zum Thema Suchmaschinenoptimierung (SEO) stellen.
rudi_s
PostRank 1
PostRank 1
Beiträge: 22
Registriert: 16.10.2015, 21:00

Beitrag rudi_s » 17.10.2015, 22:10 Verzweifle an rewrite_rule für phpBB

Funktioniert leider nicht

Code: Alles auswählen

RewriteRule ^/Arbeitslosengeld 2/$ viewforum.php?f=18&%{QUERY_STRING} [L,R=301]
RewriteRule ^/Wissensdatenbank-Fachinformationen/$ viewforum.php?f=304&%{QUERY_STRING} [L,R=301]
RewriteRule ^/Berlin/$ viewforum.php?f=265&%{QUERY_STRING} [L,R=301]

RewriteCond %{REQUEST_FILENAME} !-f

RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule ^(.*)$ app.php [QSA,L]
Ich hab nur mal 3 Foren eingetragen um zu testen was passiert wenn ich auf Google auf die Links klicke, aber es passiert da rein gar nix.

Ich komme zwar von Google mit dem dortigen Link auf meine Seite, aber dann kommt innerhalb der Seite die Fehlermeldung

Code: Alles auswählen

No route found for "GET /berlin/"

Anzeige von:

SEO Consulting bei ABAKUS Internet Marketing
Erfahrung seit 2002
  • persönliche Betreuung
  • individuelle Beratung
  • kompetente Umsetzung

Jetzt anfragen: 0511 / 300325-0.


[btk]tobi
PostRank 8
PostRank 8
Beiträge: 891
Registriert: 11.10.2004, 06:02
Wohnort: Stuttgart
Kontaktdaten:

Beitrag [btk]tobi » 17.10.2015, 23:17 Verzweifle an rewrite_rule für phpBB

Lass mal die Slashes am Anfang weg.

Code: Alles auswählen

RewriteRule ^Arbeitslosengeld 2/$ viewforum.php?f=18&%{QUERY_STRING} [L,R=301] 
RewriteRule ^Wissensdatenbank-Fachinformationen/$ viewforum.php?f=304&%{QUERY_STRING} [L,R=301] 
RewriteRule ^Berlin/$ viewforum.php?f=265&%{QUERY_STRING} [L,R=301] 

RewriteCond %{REQUEST_FILENAME} !-f 

RewriteCond %{REQUEST_FILENAME} !-d 

RewriteRule ^(.*)$ app.php [QSA,L]
Gruß Tobi

rudi_s
PostRank 1
PostRank 1
Beiträge: 22
Registriert: 16.10.2015, 21:00

Beitrag rudi_s » 18.10.2015, 21:31 Verzweifle an rewrite_rule für phpBB

Ich habe es teilweise geschafft in dem ich einen anderen MOD verwende.

Jetzt schreibt er die FOREN richtig
Allerdings bleibt ein Problem:
Die Topics haben am Ende die topic id und die sollte am Anfang stehen

www.meine-domain.org/forum/topic-irgendwas-12345.html

Das sollte aber
www.meine-domain.org/forum/12345-topic-irgendwas.html sein

Hier die Rule:

Code: Alles auswählen

RewriteRule ^phpbb/(forum|[a-z0-9_-]*-f)([0-9]+)/(topic|[a-z0-9_-]*-t)([0-9]+)(-([0-9]+))?\.html$ /phpbb/viewtopic.php?f=$2&t=$4&start=$6 [QSA,L,NC]
Wie muss ich die umstellen, dass der gewünschte Effekt herauskommt?

[btk]tobi
PostRank 8
PostRank 8
Beiträge: 891
Registriert: 11.10.2004, 06:02
Wohnort: Stuttgart
Kontaktdaten:

Beitrag [btk]tobi » 19.10.2015, 01:14 Verzweifle an rewrite_rule für phpBB

Mit der Rewrite rule alleine ist es nicht getan. Du musst erst mal phpBB dazu bringen die Links richtig auszugeben. Welche Extension benutzt du denn?

Gruß Tobi

rudi_s
PostRank 1
PostRank 1
Beiträge: 22
Registriert: 16.10.2015, 21:00

Beitrag rudi_s » 19.10.2015, 13:57 Verzweifle an rewrite_rule für phpBB

Ich hab den phpBB3-SEO-Premod_V_3-0-13-PL1 komplett installiert und mit dem deutschen Updatepaket auf 3-0-14 upgated.

Leider kann man in den Einstellungen vom SEO nicht einstellen wo die Topic-ID stehen soll UND man kann auch nicht einstellen wie viele Buchstaben mindestens im Topic-/Posttitel stehen müssen damit die weggelassen werden.

Mein manueller Test ergab, dass wenn ich die umgeschriebene URL im Browser eingebe (also als wenn ich auf einen Link klicke) die entsprechende Seite aufgerufen wird. Das funktioniert aber nur mit den Haupt-/Unterforen. Bei den Beiträgen selbst gehts nicht, weil die ID HINTEN steht, statt vorne

Ausserdem habe ich in der Testumgebung phpBB3-SEO-Premod_V_3-0-13-PL1 festgestellt, dass ich die Datenbank nicht einbinden kann weil die auf phpBB 3.1.6 ist :-(

Vielleicht noch erwähnenswert:
Ich habe beim konvertieren der alten DB auf die phpBB3.1.6 sämtliche Forentitel, IDs ect 1:1 übernommen

rudi_s
PostRank 1
PostRank 1
Beiträge: 22
Registriert: 16.10.2015, 21:00

Beitrag rudi_s » 19.10.2015, 15:12 Verzweifle an rewrite_rule für phpBB

Tinnef - das funzt nicht mit dem kompletten premod Dingens weil meine DB im Format für die phpbb 3.1.6 steht

Also zurück (oder vor?) zur phpBB 3.1.6 - ich habe die Extension von tas2580 installiert.
Funzt auch - URLs schreibt er um...nur nich so wie ich sie brauche.
Das f=xx im Forentitel brauch ich nicht weil ich keine Duplikate habe und das t=xx.html muss als reine ID VOR den Thementitel und nicht dahinter

Also sumsumm.de/unterverzeichnis/forumname/12345-thementext.html

kann man das über die rewriterules machen oder muss da im Script was gemacht werden?

Hier meine Rules

Code: Alles auswählen

RewriteEngine On
RewriteBase /forum_phpBB


RewriteRule ^forum_phpbb/forum\.html$ /forum_phpbb/index.php [QSA,L,NC]
RewriteRule ^forum_phpbb/(forum|[a-z0-9_-]*-f)([0-9]+)/?(page([0-9]+)\.html)?$ /forum_phpbb/viewforum.php?f=
RewriteRule ^forum_phpbb/(forum|[a-z0-9_-]*-f)([0-9]+)/(topic|[a-z0-9_-]*-t)([0-9]+)(-([0-9]+))?\.html$ /forum_phpbb/viewtopic.php?f=$2&t=$4&start=$6 [QSA,L,NC]

Melegrian
PostRank 10
PostRank 10
Beiträge: 3170
Registriert: 30.01.2005, 12:36

Beitrag Melegrian » 19.10.2015, 15:58 Verzweifle an rewrite_rule für phpBB

Obwohl ich weder das eine noch das andere Forum vom Innenleben kenne, so hört sich das für mich alles abenteuerlich an, was Du Dir da versuchst. Irgendwo und irgendwie ist ja das auch nur ein Script und Du wirst da nicht einfach etwas ändern können, sonst erkennt das Script am Ende nichts mehr. Ist zumindest meine Meinung.

Die einzige gangbare Möglichkeit die ich kenne, die wäre halt gewesen, Du hättest Dir vor der Umstellung eine Liste ähnlich einer Sitemap erstellt, hättest zu dieser nach dem Umzug die neuen IDs zugeordnet und hättest dann die Liste in einer zusätzlichen DB-Tabelle importiert.
Scripts und Plugins für Cookie-Hinweise

rudi_s
PostRank 1
PostRank 1
Beiträge: 22
Registriert: 16.10.2015, 21:00

Beitrag rudi_s » 19.10.2015, 17:08 Verzweifle an rewrite_rule für phpBB

1.) Ich habe eine Sitemap über das alte Board
2.) die IDs aller Beiträge sind im neuen Forum identisch - ich hab das mal manuell durch Browsereingabe geprüft, da wird alles gefunden wenn die URL dem Format der alten URL entspricht.

Abenteuerlich beschreibt es ganz gut :-)

Bei Google habe ich 126.000 Seiten im Index - unmöglich die alle in die htaccess zu bringen.

Wenn meine neue Software die URLs so umschreibt, wie die Alte das gemacht hat, findet man über die Google Links die Seiten definitiv.

Deshalb "bruzzle" ich ja so mit den rewriterules rum, weil sobald die passen führen die Links zu den richtigen Seiten
ID=identisch, Forennamen = identisch, topic-ids = identisch
Nur die blöde Umschreibung bekomm ich nicht hin.
Gut möglich dass es so ist, wie du schreibst und die rewriterules allene das nicht machen was ich brauche und an dem Script selber fummle ich lieber nicht rum

[btk]tobi
PostRank 8
PostRank 8
Beiträge: 891
Registriert: 11.10.2004, 06:02
Wohnort: Stuttgart
Kontaktdaten:

Beitrag [btk]tobi » 19.10.2015, 19:42 Verzweifle an rewrite_rule für phpBB

wenn du einfach nur die alten URLs weiterleiten willst:

Code: Alles auswählen

RewriteRule ^([0-9]*)-(.*).html viewtopic.php?t=$1&%{QUERY_STRING} [L,R=301]
Damit dein Forum auch weiterhin den Thementitel als URL ausgibt müsstest du die Funktion generate_topic_link im Listener der Extension anpassen.

Gruß Tobi

rudi_s
PostRank 1
PostRank 1
Beiträge: 22
Registriert: 16.10.2015, 21:00

Beitrag rudi_s » 20.10.2015, 15:47 Verzweifle an rewrite_rule für phpBB

Hi und Danke erstmal, dass du hier versuchst die Verzweiflung zu lindern :-)

Also ich hab die Listener gestern schon "im Verdacht" gehabt, eine zwntrale Rolle zu spielen.

Code: Alles auswählen

private function generate_topic_link($forum_id, $forum_name, $topic_id, $topic_title, $start = 0, $full = false)
Was muss ich da ändern?

Kann man denn die Forum-ID die in der URL steht irgendwie ausblenden? Also die "-fxx"" unsichtbar machen?
Und wie kann ich die Topic-ID vom Ende an den Anfang der Topicausgabe bringen?

rudi_s
PostRank 1
PostRank 1
Beiträge: 22
Registriert: 16.10.2015, 21:00

Beitrag rudi_s » 20.10.2015, 16:38 Verzweifle an rewrite_rule für phpBB

Also um es zu verdeutlichen:

Momentan generiert mir die Extension folgende Linkstruktur:

Code: Alles auswählen

domain.de/forumname-fxx/test-txxxxx.html
Ich brauch aber:

Code: Alles auswählen

domain.de/forumname/xxxxx-test.html
Konkrete Frage:
WAS muss ich da WO verändern um das Ergebnis zu bekommen?

[btk]tobi
PostRank 8
PostRank 8
Beiträge: 891
Registriert: 11.10.2004, 06:02
Wohnort: Stuttgart
Kontaktdaten:

Beitrag [btk]tobi » 20.10.2015, 18:30 Verzweifle an rewrite_rule für phpBB

Suche im Listener nach der Zeile

Code: Alles auswählen

return $this->path_helper->update_web_root_path($this->phpbb_root_path . $this->title_to_url($forum_name) . '-f' . $forum_id . '/' . $this->title_to_url($topic_title) . '-t' . $topic_id . ($start ? '-s' . $start : '') . '.html');
Ersetze sie durch

Code: Alles auswählen

return $this->path_helper->update_web_root_path($this->phpbb_root_path . $this->title_to_url($forum_name) . '/' . $topic_id . '-' . $this->title_to_url($topic_title) . ($start ? '-s' . $start : '') . '.html');
Wenn du deine URLs wirklich so ausgeben willst solltest du danach die 301 Weiterleitungen in deiner htaccess umändern.

Dabei werden einige Probleme auf dich zukommen:
1. Immer wenn du ein neues Forum anlegst musst du einen Eintrag dazu in der htaccess machen.
2. Die SEO Extension steht noch am Anfang ihrer Entwicklung und enthält einige Bugs, siehe Bugtracker auf Github.
3. Bei Updates der SEO Extension musst du die Änderung wieder machen.
4. Da "title_to_url" die Titel sicher nicht 1 zu 1 so umwandelt wie du das bisher hast werden die URLs nicht genau gleich wie im alten Forum ausgegeben.

Gruß Tobi

rudi_s
PostRank 1
PostRank 1
Beiträge: 22
Registriert: 16.10.2015, 21:00

Beitrag rudi_s » 20.10.2015, 19:07 Verzweifle an rewrite_rule für phpBB

Vielen Dank Tobi, ich werde das gleich mal testen. Wenn es machbar ist setz ich es um, ansonsten muss ich mir einen Weg ohne die Extension ausdenken und da käme nur die "Hau drauf-Methode" noch in Frage in dem ich ne Redirect mache, die jeden User von Google einfach nur ins entsprechende Unterforum führt (das sind bei mir 127) und von dort aus kann der User über die Su-Fu ja den Beitrag suchen.
Google wird "begeistert" sein, aber letztlich werden die neuen Urls ja auch gecrawelt

Noch ne Frage:
Wieso macht mir die Extension keine sitemap? muss ich da noch irgendwo was aktivieren oder so?

rudi_s
PostRank 1
PostRank 1
Beiträge: 22
Registriert: 16.10.2015, 21:00

Beitrag rudi_s » 20.10.2015, 19:14 Verzweifle an rewrite_rule für phpBB

500er Server Error sobald ich die Codezeilen austausche .-( Hm..

Meine .htaccess

Code: Alles auswählen

RewriteEngine On
RewriteBase /forum_phpbb


RewriteRule ^(.*)-f([0-9]*)/(.*)-t([0-9]*)-s([0-9]*).html viewtopic.php?f=$2&t=$4&start=$5&%{QUERY_STRING} [L]
RewriteRule ^(.*)-f([0-9]*)/(.*)-t([0-9]*).html viewtopic.php?f=$2&t=$4&%{QUERY_STRING} [L]
RewriteRule global/(.*)-t([0-9]*).html ./viewtopic.php?f=1&t=$2&%{QUERY_STRING} [L]
RewriteRule ^(.*)-f([0-9]*)/index-s([0-9]*).html viewforum.php?f=$2&start=$3&%{QUERY_STRING} [L]
RewriteRule ^(.*)-f([0-9]*)/ viewforum.php?f=$2&%{QUERY_STRING} [L]
RewriteRule ^(.*)-f([0-9]*)/ viewforum.php?f=$2&%{QUERY_STRING} [L]
RewriteRule ^forum.html index.php?%{QUERY_STRING} [L]

[btk]tobi
PostRank 8
PostRank 8
Beiträge: 891
Registriert: 11.10.2004, 06:02
Wohnort: Stuttgart
Kontaktdaten:

Beitrag [btk]tobi » 20.10.2015, 19:21 Verzweifle an rewrite_rule für phpBB

rudi_s hat geschrieben:Noch ne Frage:
Wieso macht mir die Extension keine sitemap? muss ich da noch irgendwo was aktivieren oder so?
Macht sie: DEINE_URL/seositemap.xml
rudi_s hat geschrieben:Wenn es machbar ist setz ich es um, ansonsten muss ich mir einen Weg ohne die Extension ausdenken und da käme nur die "Hau drauf-Methode" noch in Frage in dem ich ne Redirect mache, die jeden User von Google einfach nur ins entsprechende Unterforum führt (das sind bei mir 127) und von dort aus kann der User über die Su-Fu ja den Beitrag suchen.
Du kannst ja die alten Foren URLs einfach per 301 auf die neuen umleiten, habe ja oben beschrieben wie das geht. Da du eine ID in den Topics hast kannst du die auch per 301 auf die neuen URLs umleiten, so würden deine Links in Google weiterhin funktionieren und Google tauscht sie recht bald gegen die neuen URLs aus.
rudi_s hat geschrieben:500er Server Error sobald ich die Codezeilen austausche .-( Hm..
Hast du RewriteEngine On 2x in der htaccess?

Gruß Tobi

Antworten