Hej.
Här var lite kod att bita i. Kul =)
Som jag förstår det så har du några mappar som du inte vill köra regler på (drupal|wordpress|joomla|dev|test|workingbackup). Annars så vill du att allt ska gå till joomla mappen. Men du vill inte att det ska vara en redirect utan att det ska "gömmas".
Jag går igenom din .htaccess fil och skriver lite kommentarer. Det är lite frågetecken här och där.
Kod:
#Regel 1
#Om URI inte innehåller punkt eller slash, skriv om till http://www.incumbo.com/$1.
#Vad är syftet med denna regel?
RewriteCond %{REQUEST_URI} !(\.|/$)
RewriteRule (.*) http://www\.incumbo\.com/$1/ [R=301,L]
#Regel 2
#Om host är incumbo.com skriv om till www.incumbo.com
RewriteCond %{HTTP_HOST} ^incumbo\.com$ [NC]
RewriteRule ^/?(.*)$ http://www\.incumbo\.com/$1 [r=301,L]
#Regel 3
#Om host inte är www.incumbo.com skriv om till www.incumbo.com
#Regeln över är en delmängd av regel 2. Detta innebär att regel 2 överflödig.
RewriteCond %{HTTP_HOST} !^www\.incumbo\.com [NC]
RewriteRule ^(.*)$ http://www\.incumbo\.com/$1 [R=301,L]
#Regel 4
# Om URI börjar på någon av dessa mappar så hoppa över följande 2 regler.
# L betyder Last. S står för Skipp. Dessa två behöver aldrig användas tillsammans.
# Om du säger att en denna regel ska vara sist så hoppar du automatiskt över dem nästa..
RewriteCond %{REQUEST_URI} ^/(drupal|wordpress|joomla|dev|test|workingbackup) [NC]
RewriteRule ^.*$ - [L,S=2]
#Regel 5
#Om host är www.incumbo.com och URI är minst ett tecken.
#så SYNTAX ERROR
#Vi vet också att host kommer vara www.incumbo.com tack vare Regel 3
RewriteCond %{HTTP_HOST} ^www\.incumbo\.com [NC]
RewriteCond %{REQUEST_URI} ^/(.+) [NC]
RewriteRule ^(.*)$ ?/ [L]
#Regel 6
#Skriv om allt till joomla/$1
RewriteRule ^(.*)$ joomla/$1 [L]
(har även provat varianten som föreslagits här på SEO med {REQUEST_FILENAME} !-f och {REQUEST_FILENAME} !-d utan framgång)
Detta är ganska många regler och jag kan inte testa så det kanske inte blir helt rätt på första försöket. Men detta är mitt förslag till förbättring av din .htaccess fil. Jag har kvar numereringen på reglerna.
Kod:
#Regel 1
#Om URI inte innehåller punkt eller slash, skriv om till http://www.incumbo.com/$1.
#Jag förstår inte syftet med denna regel men det gör säkert du så jag har kvar den.
RewriteCond %{REQUEST_URI} !(\.|/$)
RewriteRule (.*) http://www\.incumbo\.com/$1/ [R=301,L]
#Regel 3
#Om host inte är www.incumbo.com skriv om till www.incumbo.com
RewriteCond %{HTTP_HOST} !^www\.incumbo\.com [NC]
RewriteRule ^(.*)$ http://www\.incumbo\.com/$1 [R=301,L]
#Regel 4
# Om URI börjar på någon av dessa mappar så hoppa över följande 2 regler.
RewriteCond %{REQUEST_URI} ^/(drupal|wordpress|dev|test|workingbackup) [NC]
RewriteRule ^.*$ - [L]
#Regel 6
#Om inte URI börjar med joomla,
#Skriv om till /joomla/$1
#Ta också med en eventuell query string
RewriteCond %{REQUEST_URI} !^/joomla) [NC]
RewriteRule ^(.*)$ /joomla/$1 [L, QSA]
Jag tog bort joomla ur regel 4. Annars kommer regel 6 aldrig att köras. Testa gärna och återkom med utfallet.