Ich hatte eine homepage auf Version 4.1.0, DB latin, ohne rewrite,
also z.B.: http://www.domain.de/index.php?article_id=38
Dann Update auf 4.4.1 und UTF-8 (4.4.1 installiert, DB-Dump usw.) .... funktionierte
EDIT: Einige Tablellen waren noch latin, daran lags aber nicht ...
Nun addon url_rewrite installiert/aktiviert:
- alte Artikel werden korrekt geschrieben (z.B.: http://www.domain.de/testartikel.html)
- neu angelegte Artikel werden erst korrekt geschrieben, aber nach Löschen des Caches nach alten rewrite-Schema (z.B.: http://www.domain.de/38-0-testartikel.html) ausgegeben, und auch von Listenmodulen nicht mehr erkannt
versuchte Massnahmen (die aber alle das eigentliche Problem nicht lösen):
- url_rewrite-Addon abgeschaltet => URLs werden nach altem Schema geschrieben (vor und nach Cache löschen)
- rex SEO statt url_rewrite installiert => gar kein (!) rewrite mehr!
(Aber: nach erneutem Umschalten von rexSEO auf url_rewrite blieben die neuen Artikel auch nach Cache-Löschen korrekt, nur ganz neue Artikel waren dann wieder falsch .... (??)
- htaccess habe ich mit und ohne RewriteBase/ ausprobiert, base href im Template ist natürlich gesetzt ...
Mein System (auf xampp):
REDAXO: 4.4.1
PHP: 5.4.7
Datenbank MySQL: 5.5.27
Meine htaccess (von rexSEO generiert):
Code: Alles auswählen
###
### RexSEO Addon htaccess file
###
### @link https://github.com/gn2netwerk/rexseo
###
### @author dh[at]gn2-netwerk[dot]de Dave Holloway
### @author code[at]rexdev[dot]de jdlx
###
### Based on url_rewrite Addon by
### @author markus.staab[at]redaxo[dot]de Markus Staab
###
### @package redaxo 4.3.x/4.4.x
### @version 1.5.3
###
### DO NOT REMOVE THE FOLLOWING "REXSEO REDIRECTS BLOCK" DELIMITERS!
### REXSEO REDIRECTS BLOCK
### /REXSEO REDIRECTS BLOCK
<IfModule mod_rewrite.c>
### ENABLE REWRITING
RewriteEngine On
RewriteBase /
### SUBDOMAIN REDIRECTS
### 1. uncomment "RewriteCond" & "RewriteRule"
### 2. use only one(!) of the following two redirects
### 3. replace DOMAIN.TLD with your domain
### SUBDOMAIN REDIRECT www.DOMAIN.TLD -> DOMAIN.TLD
# RewriteCond %{HTTP_HOST} ^www\.DOMAIN\.TLD$
# RewriteRule ^(.*)$ http://DOMAIN.TLD/$1 [L,R=301]
### SUBDOMAIN REDIRECT *.DOMAIN.TLD -> www.DOMAIN.TLD
# RewriteCond %{HTTP_HOST} ^DOMAIN\.TLD$
# RewriteRule ^(.*)$ http://www.DOMAIN.TLD/$1 [L,R=301]
### REDIRECT SITEMAP.XML -> REXSEO SITEMAP FUNCTION (XML)
RewriteRule ^sitemap\.xml$ index.php?rexseo_func=googlesitemap [NC,L]
### REDIRECT SITEMAP.JSON -> REXSEO SITEMAP FUNCTION (JSON FORMAT)
# RewriteRule ^sitemap\.json$ index.php?rexseo_func=googlesitemap&mode=json [NC,L]
### REDIRECT ROBOTS.TXT -> REXSEO ROBOTS FUNCTION
RewriteRule ^robots\.txt$ index.php?rexseo_func=robots [NC,L]
### DON'T REWRITE DIRS/FILES
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-l
RewriteCond %{REQUEST_URI} !^redaxo/.*
RewriteCond %{REQUEST_URI} !^files/.*
RewriteCond %{REQUEST_URI} !^google(.*).html*
### REWRITE ALL OTHER REQUESTS TO INDEX.PHP
RewriteRule ^(.*)$ index.php?%{QUERY_STRING} [L]
</IfModule>
Scheint ja etwas mit dem Update zu tun zu haben ... DB-Struktur, Umstellung latin-UTF-8 oder PHP-Version ?
Seltsam auch, dass rexSEO gar nicht funktioniert ...
Gruss, Frood