Probleme mit Apache mod_rewrite Modul

Die Fehlerbehebung ist etwas schwierig, da der Benutzer in diesem Fall die Fehlerquelle ist und fehlerhafter Betrieb (durch Unwissenheit) nicht direkt strafrechtlich verfolgt werden kann.

Wenn du einen Zugriffsschutz auf einen Order legst, schränkst du den Zugriff darauf ein.
Und je nach dem, wie du den Schutz konfiguriert hast, hast du sogar dem Shop selbst den Zugriff verboten. Ergo können bestimmte erforderliche Funktionen gar nicht mehr funktionieren.
Stell dir vor, du baust ne neue Tür zuhause ein, wirfst aber alle Schlüssel weg. Warum sollte der Türhersteller jetzt daran die Schuld tragen?

Als erstes musst du herausfinden, welche Apache Version auf deinem Webspace läuft, die genaue Konfiguration hängt dann davon ab.

Im Bugtracker stehen schon einige Lösungsvorschläge, z.B. könnte man eine aussagekräftige Fehlermeldung einbauen oder man könnte den Test vom Browser aus machen anstatt vom Server aus.

htaccess:


    RewriteCond %{REQUEST_URI} setup/index\.php$
    RewriteRule setup/index\.php$ setup/index.php?mod_rewrite_module_is=on [QSA]
    RewriteCond %{REQUEST_URI} admin/index\.php$
    RewriteRule admin/index\.php$ admin/index.php?mod_rewrite_module_is=on [QSA]

oxsysrequirements.php:

    protected function _checkModRewrite($aHostInfo)
    {
        if ($_GET['mod_rewrite_module_is'] == 'on') {
            $iModStat = 2;
        } else {
            if (function_exists('apache_get_modules')) {
                // it does not assure that mod_rewrite is enabled on current host, so setting 1
                $iModStat = in_array('mod_rewrite', apache_get_modules()) ? 1 : 0;
            } else {
                $iModStat = -1;
            }
        }

        return $iModStat;
    }

Das würde auch mit Verzeichnisschutz und fehlendem apache_get_modules funktionieren.
Was haltet ihr davon? Könnte man das verbessern? Blöder Ansatz?

Hi, Ich habe mir nun so ziemlich alles hier durchgelesen. Problem: Ich bin irgendwie zu dumm die oxsysrequirements.php Datei zu finden, Ich habe wirklich alles durchsucht auch mit FileZilla selber. Wo müsste die Datei denn sein? “/var/www/html/shop/source/Setup/core/oxsysrequirements.php”? Wäre sehr dankbar für Antwort. :slight_smile:

Grüsse

Klingt so, als hättest du die Version 6. Da heißen alle Dateien anders. Wahrscheinlich funktioniert das, was auch immer hier vor 2-8 Jahren im Bezug auf diese Datei beschrieben wurde, mit der neusten Version auch gar nicht mehr.
Was ist denn das Problem?

Hi, bei mir ist das mod_rewrite Modul mit einem “X” markiert. Habe alle Schritte von https://oxidforge.org/en/system-requirements#apache_mod_rewrite_module gemacht.

Funktioniert nach Restart von Apache 2 immernoch nicht.

Hast du ne Idee?

Gruss

Du möchtest eine neue V6 installieren, oder?
wir bräuchten erst mal irgendwelche verwertbaren Infos.
Shop Version, PHP Version, Hoster.
Ist der Ordner passwortgeschützt?
läuft auf dem selben Hosting ein anderer Shop?

Ja, neue V6
Neuste Shop Version
PHP: 5.6.33
Hoster: Host-Unlimited.de (vServer mit Apache 2)
Nicht passwortgeschützt
Kein anderer Shop

Stellst Du Dir das Installationspaket denn über Composer zusammen oder versuchst Du, dieses Downloadpaket zu installieren? https://oxidforge.org/de/downloadpaket-fuer-oxid-eshop-6-verfuegbar.html

Hallo,
zum Setup muss die .htaccess auf 666/rwrwrw gesetzt sein, ansonsten wird mod_rewrite nicht erkannt. Hat das Problemchen bei mir gelöst.

Hallo
Das Problem habe ich auch es ist entstanden nach dem ich auf Htts umgestigen bin,
habe fast alles hin bekommen nur das macht mir Kopfschmerzen.
Kann mir einer sagen wie ich jetzt vorgehen kann damit es weitergeht oder kann mir einer Helfen.

Gruß
Thomas

Die vhost-Konfiguration für https ist separat von der für http, daher sollte man die mal vergleichen, vor allem, wenn das Problem erst mit dem Wechsel auf https entstanden ist.

Hallo
da hapert es schon was muss wo stehn.

Das ist ja mein Problem ich habe keine Ahnung von dem,
daher suche ich jemanden der mich an die Hand nimt und miir den Weg zeigt.

Gruß
Thomas

Konkret müsstest du in der vhost-Konfiguration prüfen, ob AllowOverride auf “All” gesetzt ist. Nur dann ist die .htaccess-Datei wirksam. Die vhost.conf-Dateien liegen normalerweise in /etc/apache2/sites-available, das kann aber abweichen, falls du Plesk oder ähnliches hast.

Daneben kannst du mit dem shell-Befehl sudo apachectl -M noch die geladenen Module anzeigen lassen. In der Liste muss “rewrite_module” enthalten sein.

Hallo
warum auch immer.
Ich habe auf denm gleichen Server (gleiche Platte)
Noch eine Domaine und habe da den Oxid 4.10 drauf und da ist alles
oK . Das heist das ich den alten shop abschalte und neu aufsetzen mus.
Denn von Provieder her gibt es auch keine Probleme.
Ich dake euch.

Gruß
Thomas

Läuft der Shop denn?

Ich bin noch am Testen aber es scheind das der neue keine Probleme macht,
auser ein paar falsche Einstellungen von mir ,
du kannst ja mal rein schauen ist aber nichts drin auser 2 Testartikel.
Fals ich das darf schulbedarf-seeger(dot)de
der ist ohne fehler, seeger-vechta(dot)de /shop
ist der mit dem Fehler (der ist noch aktive)
hat mich bis jetzt aber auch nicht geärgert., fals nicht bitte ich um Streichung.
Gruß
Thomas

Du musst sowohl bei sShopUrl als auch bei sSSLShopUrl die https-Adresse eintragen.

1 Like

Wo genau muss ich den Eintrag vornehmen, in
welcher Datei oder an welcher Stelle.
Bei der neu installation brauchte ich nur an einer Stelle
ganz am Anfang einmal Https eingeben da lief es.
Wo müsste ich das bei dem älteren shop machen.

In config.inc.php (Schreibschutz vorher entfernen)

DANKE ich weiss nicht wie ein kleines “s” ein so Ärgern kann.
Großes LOB an die Entwickler und auch an leofontic .
Danke das du mir geholfen hast.
Ich hoffe ich kann irgendwan mal jemanden hier Helfen.

Gruß
Thomas

1 Like