Seite 1 von 1

einzelne Links/Komponenten/Ordner ausschließen vom mod rewri

Verfasst: 09.02.2010 22:09
von mrmaulwurf
Hallo
mod rewrite ändert, wie gewünscht alle Urls
Ich möchte, dass eine Komponente Jdownloads nicht umgewandelt wird, da der Download als letzter Schritt nicht funktioniert (Seite nicht gefunden)

Ohne Seo URL schauts so aus:(voran natürlich die URL)
/index.php?option=com_jdownloads&Itemid=36
/index.php?option=com_jdownloads&Itemid=36&task=viewcategory&catid=1
/index.php?option=com_jdownloads&Itemid=36&task=view.download&catid=1&cid=2
/index.php?option=com_jdownloads&Itemid=36&task=summary&cid=2&catid=1
Bis hier funktioniert noch alles

Dieser Link (ohne SEO URL) geht mit SEO dann nicht mehr (findet den Ordner/File nicht)
/index.php?option=com_jdownloads&Itemid=36&task=finish&cid=2&catid=1&m=0

Wie kann ich also ausschliessen, dass ein gewünschter Link nicht umgewandelt wird.

(ordner ausschliessen gibts bereits im Forum - suchen )

Verfasst: 23.02.2010 14:24
von mgutt
Das sind denke ich nicht die fehlerhaften URLs. Ich glaube, dass diese URL auf den eigentlich Source des Downloads weiterleitet und der dann falsch umgeschrieben wird.

Wie sieht denn die URL aus, die nicht funktioniert?

Verfasst: 23.02.2010 17:24
von mrmaulwurf
Hallo

Im Prinzip ist es nur dieser Link:

Ohne Seo --> /index.php?option=com_jdownloads&Itemid=36&task=finish&cid=2&catid=1&m=0
--> /index.php?option=com_jdownloads&Itemid=36&task=viewcategory&catid=1
mit Seo --> /download/?task=finish&cid=4&catid=1
--> /download/?task=finish&cid=2&catid=1


in der .htacess steht folgendes drin:

Code: Alles auswählen

########## Begin - Joomla! core SEF Section
#
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !^/index.php
RewriteCond %{REQUEST_URI} !^/(download)
RewriteCond %{REQUEST_URI} !^/(downloads)
RewriteCond %{REQUEST_URI} !^/index.php?option=com_jdownloads 
RewriteCond %{REQUEST_URI} (/|\.php|\.html|\.htm|\.feed|\.pdf|\.raw|/[^.]*)$  [NC]
RewriteRule (.*) index.php
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization},L]
#
########## End - Joomla! core SEF Section
Eigentlich müsste es ja reichen den OrginalLink zu belassen.
der nicht funzende Linke geht dann wenn er /index.php/download/?task=finish&cid=2&catid=1 lautet.

Irgendwie verstehe ich nicht was da läuft. das /index.php/ will ich auch aus dem (google) index haben.

Wahrscheinlich gelöst!

Verfasst: 23.02.2010 22:26
von mrmaulwurf
offensichtlich ging es durch die 2te Regel.

########## Begin - Joomla! core SEF Section
#
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !^/index.php
RewriteCond %{REQUEST_URI} !^/(downloads)
RewriteCond %{REQUEST_URI} !^/index.php?option=com_jdownloads
RewriteCond %{REQUEST_URI} (/|\.php|\.html|\.htm|\.feed|\.pdf|\.raw|/[^.]*)$ [NC]
RewriteRule (.*) index.php
RewriteRule !^index.php?option=com_jdownloads - [L]
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization},L]
#
########## End - Joomla! core SEF Section

Regel wie oben gewünscht funktioniert, aber

Verfasst: 23.02.2010 23:05
von mrmaulwurf
irgendwo kommen beim Sitemap erstellen Einträge zustande die bis in unendliche Tiefen urls entdecken.

alle beginnen mit /index.php/ und wiederholen alle Artikel und komponenten usw.

Wie kann ich ausschließen, dass die geposteten Rules w.o. solche Urls erstellen.

Problem gelöst

Verfasst: 26.02.2010 20:21
von mrmaulwurf
Problem gelöst. Zumindest reicht die Lösung dazu. Optimierungsbedarf gibts trotzdem.
Teil 1 löscht das index.php/ Problem
Teil 2 .. das mit doppelten Content
Teil 3 lässt den Ordner /Componente aus.

Code: Alles auswählen

########## Begin - Joomla! core SEF Section
#
RewriteCond %{THE_REQUEST} ^[A-Z]+\ /index\.php
RewriteRule ^index\.php/?(.*) /$1 [L,R=301]

RewriteCond %{THE_REQUEST} ^[A-Z]+\ /component
RewriteRule ^index\.php/?(.*) /$1 [L,R=301]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
#RewriteCond %{REQUEST_URI} !^/index.php
RewriteCond %{REQUEST_URI} !^/(downloads)
#RewriteCond %{REQUEST_URI} !^/index.php?option=com_jdownloads 
RewriteCond %{REQUEST_URI} (/|\.php|\.html|\.htm|\.feed|\.pdf|\.raw|/[^.]*)$  [NC]
RewriteRule (.*) index.php
#RewriteRule !^index.php?option=com_jdownloads  - [L] 
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization},L]

########## End - Joomla! core SEF Section