Willkommen Gast. Bitte anmelden oder registrieren.

Autor Thema: Probleme mit eigenem Mod Rewrite  (Gelesen 2787 mal)

0 Mitglieder und 1 Gast betrachten dieses Thema.

chrisd

  • Bestätigter Nutzer
  • Beiträge: 6
Probleme mit eigenem Mod Rewrite
« am: 14. April 2015, 17:55:12 »
Hallo

ich arbeite seit neuesten mit Joomla.

Nun habe ich ein eigenes php script geschrieben und per php bridge ( http://www.henryschorradt.de/information/joomla/ ) in Joomla eingebunden. Dies klappt auch einwandfrei. Dieses PHP Script ruft nun in einer Mysql Datenbank Daten ab und zeigt sie an z.b.:
www.example.com/phpbridgefile?auto=opel
Nun wird in meinen Script das "Auto" eingelesen und aus der Datenbank alle Infos zu Opel gesammelt und angezeigt, dies klappt soweit auch einwandfrei. Die Url ist mir aber etwas zu unbequem ich würde alle Infos zu Opel auch gerne per www.example.com/auto/opel.html erreichbar machen. Also
RewriteRule ^auto/([^/]*)\.html$ /phpbridgefile?auto=$1 [L] in die .htaccess
Nur leider bekomm ich damit einen 404 Kategorie nicht gefunden.

Hab mittlerweile vieles probiert aber ich bekomms einfach nicht hin. Wie kann ich Joomla nun klar machen, das /auto/ von Joomla selbst nicht beachtet werden soll? SEO Urls möchte ich von Joomla gerne aktiviert lassen, da auch andere Joomlaseiten diese benötigen.

Hat jemand eine Lösung für mich?

mfg

Chris

bembelimen

  • moderatives Dielektrikum
  • Beiträge: 227
  • Ich kam, sah und zensierte...
    • Joomla! Vereinsverwaltung
Antw: Probleme mit eigenem Mod Rewrite
« Antwort #1 am: 14. April 2015, 18:59:32 »
Hallo,

wie ist denn die Reihenfolge in der htaccess? Es sollte vor dem Joomla!-Rewrite stehen. Falls das nicht hilft, kannst du mal deine komplette htaccess posten?
Joomla! ist auch nur ein Mensch...

chrisd

  • Bestätigter Nutzer
  • Beiträge: 6
Antw: Probleme mit eigenem Mod Rewrite
« Antwort #2 am: 14. April 2015, 19:24:05 »
hi

habs schon an verschiedenen stellen probiert. So sieht die .htaccess aus:

##
# @package    Joomla
# @copyright  Copyright (C) 2005 - 2015 Open Source Matters. All rights reserved.
# @license    GNU General Public License version 2 or later; see LICENSE.txt
##

##
# READ THIS COMPLETELY IF YOU CHOOSE TO USE THIS FILE!
#
# The line just below this section: 'Options +FollowSymLinks' may cause problems
# with some server configurations.  It is required for use of mod_rewrite, but may already
# be set by your server administrator in a way that disallows changing it in
# your .htaccess file.  If using it causes your server to error out, comment it out (add # to
# beginning of line), reload your site in your browser and test your sef url's.  If they work,
# it has been set by your server administrator and you do not need it set here.
##

## No directory listings
IndexIgnore *

## Can be commented out if causes errors, see notes above.
Options +FollowSymlinks
Options -Indexes

## Mod_rewrite in use.

RewriteEngine On

# HIER HAB ICH ES BEREITS PROBIERT #

## Begin - Rewrite rules to block out some common exploits.
# If you experience problems on your site block out the operations listed below
# This attempts to block the most common type of exploit `attempts` to Joomla!
#
# Block out any script trying to base64_encode data within the URL.
RewriteCond %{QUERY_STRING} base64_encode[^(]*\([^)]*\) [OR]
# Block out any script that includes a <script> tag in URL.
RewriteCond %{QUERY_STRING} (<|%3C)([^s]*s)+cript.*(>|%3E) [NC,OR]
# Block out any script trying to set a PHP GLOBALS variable via URL.
RewriteCond %{QUERY_STRING} GLOBALS(=|\[|\%[0-9A-Z]{0,2}) [OR]
# Block out any script trying to modify a _REQUEST variable via URL.
RewriteCond %{QUERY_STRING} _REQUEST(=|\[|\%[0-9A-Z]{0,2})
# Return 403 Forbidden header and show the content of the root homepage
RewriteRule .* index.php [F]
#
## End - Rewrite rules to block out some common exploits.

# HIER HAB ICH ES BEREITS PROBIERT #

## Begin - Custom redirects
#
# If you need to redirect some pages, or set a canonical non-www to
# www redirect (or vice versa), place that code here. Ensure those
# redirects use the correct RewriteRule syntax and the [R=301,L] flags.
#
## End - Custom redirects

##
# Uncomment following line if your webserver's URL
# is not directly related to physical file paths.
# Update Your Joomla! Directory (just / for root).
##

# RewriteBase /

# HIER HAB ICH ES BEREITS PROBIERT #

## Begin - Joomla! core SEF Section.
#
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
#
# If the requested path and file is not /index.php and the request
# has not already been internally rewritten to the index.php script
RewriteCond %{REQUEST_URI} !^/index\.php
# and the requested path and file doesn't directly match a physical file
RewriteCond %{REQUEST_FILENAME} !-f
# and the requested path and file doesn't directly match a physical folder
RewriteCond %{REQUEST_FILENAME} !-d
# internally rewrite the request to the index.php script
RewriteRule .* index.php [L]
#
## End - Joomla! core SEF SectioN

Überall wo die Zeile "# HIER HAB ICH ES BEREITS PROBIERT #" steht, hab ich meine oben genannte Zeile bereits probiert, leider ohne Erfolg :(

mfg

Christian

bembelimen

  • moderatives Dielektrikum
  • Beiträge: 227
  • Ich kam, sah und zensierte...
    • Joomla! Vereinsverwaltung
Antw: Probleme mit eigenem Mod Rewrite
« Antwort #3 am: 14. April 2015, 19:52:46 »
Hallo,
direkt unter "RewriteEngine On" sollte die richtige Stelle sein.
Funktioniert es denn wenn du die ganzen Joomla!-Rewrites raus wirfst?
Joomla! ist auch nur ein Mensch...

chrisd

  • Bestätigter Nutzer
  • Beiträge: 6
Antw: Probleme mit eigenem Mod Rewrite
« Antwort #4 am: 14. April 2015, 20:04:05 »
an der Stelle kommt ebenfalls ein 404 Kategorie nicht gefunden

Wenn ich das joomlazeug rauswerfe, würde es wohl funktionieren, da allerdings die Url www.example.com/phpbridgefile?auto=opel auch nicht mehr geht (phpbridgefile ist ja auch eine SEO URL von Joomla) bekomm ich ebenfalls einen 404 das phpbridgefile nicht gefunden wurde (allerdings ohne den Joomlaaufsatz sondern direkt vom Webserver, ist klar da Joomla seine eigene 404 Seite nicht rausgeben kann)

Mein Verdacht ist diese Stelle:

RewriteCond %{REQUEST_URI} !^/index\.php
# and the requested path and file doesn't directly match a physical file
RewriteCond %{REQUEST_FILENAME} !-f
# and the requested path and file doesn't directly match a physical folder
RewriteCond %{REQUEST_FILENAME} !-d
# internally rewrite the request to the index.php script
RewriteRule .* index.php [L]
#
## End - Joomla! core SEF SectioN

hier werden wohl alle Aufrufe die nicht auf index.php zeigen auf diese umgelenkt, versuche auch ein RewriteCond mit phpbridgefile anzulegen scheiterten aber da ich kein htaccess Experte bin :/

mfg

Chris


bembelimen

  • moderatives Dielektrikum
  • Beiträge: 227
  • Ich kam, sah und zensierte...
    • Joomla! Vereinsverwaltung
Antw: Probleme mit eigenem Mod Rewrite
« Antwort #5 am: 15. April 2015, 11:25:44 »
Hallo,

ich habe übersehen, dass das selbst eine eigene Joomla! Komponente ist.

Der beste Weg wäre es wohl dein Script selbst als Komponente umzusetzen, dann kannst du die URLs selbst festlegen (über den Router).
Alternativ kannst du auch dein Script selbst die URLs generiern lassen und dann "manuell" die Parameter auseinanderfriemeln.
Joomla! ist auch nur ein Mensch...

chrisd

  • Bestätigter Nutzer
  • Beiträge: 6
Antw: Probleme mit eigenem Mod Rewrite
« Antwort #6 am: 15. April 2015, 13:32:40 »
hi

danke für deine Hilfe, das ganze ist mir aber eigentlich viel zu aufwendig. Das klappt mit der phpbridge ja jetzt wunderbar bis auf die Kleinigkeit mit der Url.

Man muss doch in der htaccess die Umleitung von /auto/ auf die index.php irgendwie ausschließen können?

mfg

Chris

bembelimen

  • moderatives Dielektrikum
  • Beiträge: 227
  • Ich kam, sah und zensierte...
    • Joomla! Vereinsverwaltung
Antw: Probleme mit eigenem Mod Rewrite
« Antwort #7 am: 16. April 2015, 15:33:21 »
Hallo Chris,

in dem Fall nicht, da ja das Rewrite schon passiert, dadurch dass der Aufruf der (PHP-Bridge) Komponente auf Joomla! geleitet wird.
Joomla! ist auch nur ein Mensch...

chrisd

  • Bestätigter Nutzer
  • Beiträge: 6
Antw: Probleme mit eigenem Mod Rewrite
« Antwort #8 am: 17. April 2015, 15:45:21 »
hi

hm verstehe...

Alternativ kannst du auch dein Script selbst die URLs generiern lassen und dann "manuell" die Parameter auseinanderfriemeln.

wie meinst du das?

mfg

Christian

bembelimen

  • moderatives Dielektrikum
  • Beiträge: 227
  • Ich kam, sah und zensierte...
    • Joomla! Vereinsverwaltung
Antw: Probleme mit eigenem Mod Rewrite
« Antwort #9 am: 17. April 2015, 19:00:52 »
Joomla! (bzw. die htaccess) wirft die komplette URL in Joomla! rein und du kannst diese per JUri abgreifen. Da kannst du evtl. dann mit arbeiten.
Joomla! ist auch nur ein Mensch...

chrisd

  • Bestätigter Nutzer
  • Beiträge: 6
Antw: Probleme mit eigenem Mod Rewrite
« Antwort #10 am: 18. April 2015, 00:54:02 »
Die Lösung ist eigentlich so banal, das es für uns beide jetzt peinlich wird...  ;D ;D

RewriteRule ^automodell/([^/]*)\.html$ /index.php?option=com_phpbridge&view=phpview&run=phpbridgefile&mode=phpbridgefile&Itemid=114&auto=$1 [NC,L]
Easy oder? Einfach das Joomla SEO umgehen, die Artikel sind ja auch unter der langen Url erreichbar und das ist dankenswerterweiße eine index.php die ja im RewriteCond mit ausgeschlossen wird 8) 8)

Draufbekommen bin ich durch die Hilfe von Rainer Zufall, vielen dank an ihn ;)

mfg

Chris