Zum Inhalt springen

[mod_rewrite] RewriteCount Problem


 Teilen

Empfohlene Beiträge

Hallo.

Ich habe ein kleines Problem mit mod_rewrite ...

Meine .htaccess

# Verzeichnis

DirectoryIndex index.php index.html index.htm

Options FollowSymLinks

Allow from all


# PHP

#nothing to do


# mod_rewrite

RewriteEngine On

 # Dynamische Seiten laden

  RewriteCond %REQUEST_URI% ^homepage/(.*)/(.*)\.html [NC]

  RewriteRule ^.* /script.php?category=$1&page=$2 [R,L]

Die Anweisung soll folgendes durchführen:

Bedinungen:

- bei Aufruf von "dev5-media.de/homepage/[kategorie_titel]/[seiten_titel].html // "homepage" existiert nicht. es ist ein keyword für mod_rewrite.

- nur Endung ".html" nicht ".htm"

- Groß- und Kleinschreibung wird nicht beachtet

Anweisungen:

- /scripts.php?category=[kategorie_titel]&page=[seiten_titel]

Eigenschaften:

- definitiv letzte Regel für mod_rewrite

- neue url übermitteln

Link zu diesem Kommentar
Auf anderen Seiten teilen



  RewriteCond %REQUEST_URI% ^[b]/[/b]homepage/(.*)/(.*)\.html [NC]


Denke das hilft, auch wenn ich keine wirkliche Frage oder Problemstellung in deinem Beitrag gefunden habe :D EDIT: Natürlich muss bei der RewriteRule derselbe Ausdruck hin. Ein RewriteRule .* Bla bringt dir gar nichts, da der Reg.Ausdruck vorne ja entscheidet was hinten mit gemacht wird. EDIT2:

RewriteCond %REQUEST_URI% ^/homepage/.*/.*\.html [NC]

RewriteRule ^/homepage/(.*)/(.*)\.html /script.php?category=$1&page=$2 [R,L]

Das, würde ich jetzt mal sagen, sollte funktionieren.

Link zu diesem Kommentar
Auf anderen Seiten teilen

# mod_rewrite

RewriteEngine On

 # Dynamische Seiten laden

  RewriteCond %[b]{[/b]REQUEST_URI[B]}[/B]% ^/homepage/(.*)/(.*)\.html [NC]

  RewriteRule ^homepage/(.*)/(.*)\.html /script.php?category=$1&page=$2 [R,L]
Ansonsten:

RewriteLog /var/log/apache2/rewriteLog

RewriteLogLevel 5 

Level kann eine Zahl von 0(nichts) bis 9 (alles) sein.

Geht allerdings nicht in einer .htaccess Datei.

EDIT:

Und produktiv sollte das nicht höher als 2 stehen ;)

Link zu diesem Kommentar
Auf anderen Seiten teilen

Passt hier IMHO gar nicht hin. Was er mit der Lösung macht sind SEO-Links, keine Umleitung zu einer neuen Seite.

Sprich der Client bekommt von der Umleitung gar nichts mit (und soll das auch gar nicht).

Aber er macht doch oben mit [R,L] eine Umleitung, anstatt ein unsichtbares Rewrite mit [L]. Nur ohne Angabe des Codes wird es eine temporäre mit 302 anstatt einer permanenten mit 301.

Gerade noch mal getestet. Dies steht in meiner .htaccess

RewriteEngine on


RewriteCond %{REQUEST_URI}% ^/homepage/(.*)/(.*)\.html [NC]

RewriteRule ^homepage/(.*)/(.*)\.html /album.php?cat=$1&album=$2 [R,L]
Dies ist das Output:
D:\wget>wget --server-response http://localhost/homepage/e/5.html

--07:48:55--  http://localhost/homepage/e/5.html

           => `5.html'

Resolving localhost... 127.0.0.1

Connecting to localhost[127.0.0.1]:80... connected.

HTTP request sent, awaiting response...

 1 HTTP/1.1 302 Found

 2 Date: Fri, 10 Aug 2007 06:48:55 GMT

 3 Server: Apache/2.0.53 (Win32) mod_ssl/2.0.53 OpenSSL/0.9.7f PHP/5

 4 Location: http://localhost/album.php?cat=e&album=5

 5 Content-Length: 342

 6 Keep-Alive: timeout=15, max=100

 7 Connection: Keep-Alive

 8 Content-Type: text/html; charset=iso-8859-1

Location: http://localhost/album.php?cat=e&album=5 [following]

--07:48:55--  http://localhost/album.php?cat=e&album=5

           => `album.php@cat=e&album=5'

Connecting to localhost[127.0.0.1]:80... connected.

HTTP request sent, awaiting response...

 1 HTTP/1.1 200 OK

 2 Date: Fri, 10 Aug 2007 06:48:55 GMT

 3 Server: Apache/2.0.53 (Win32) mod_ssl/2.0.53 OpenSSL/0.9.7f PHP/5

 4 X-Powered-By: PHP/5.0.4

 5 Content-Length: 4779

 6 Keep-Alive: timeout=15, max=100

 7 Connection: Keep-Alive

 8 Content-Type: text/html


100%[====================================>] 4,779         --.--K/s


07:48:55 (4.56 MB/s) - `album.php@cat=e&album=5' saved [4779/4779]

Link zu diesem Kommentar
Auf anderen Seiten teilen

Aber er macht doch oben mit [R,L] eine Umleitung, anstatt ein unsichtbares Rewrite mit [L]. Nur ohne Angabe des Codes wird es eine temporäre mit 302 anstatt einer permanenten mit 301.

Oh, stimmt. Das R hab ich ganz übersehen. Von daher sollte er das R lieber weglassen. Ich denke das steht da einfach aus Unwissen.

Ich hab das aber z.B. da auch gar nicht erwartet (weil ich einen SEO-Link erwartet hab bzw dessen Umschrteibung), also ist mir das auch nicht aufgefallen...

Link zu diesem Kommentar
Auf anderen Seiten teilen

Ich zitiere:

"Eigenschaften:

- definitiv letzte Regel für mod_rewrite

- neue url übermitteln"

Also steht das R da mit voller Absicht. :)

Das kann auch aus einem Verständnissproblem stammen. Klar, ich interpretiere da vielleicht zuviel rein, aber die Form die seine Links haben und die form, die dann umgeschrieben aufgerufen werden, das sieht für mich klar nach SEO aus.

Aber der Client muss von der umgeschriebenen URL ja nichts wissen, von daher kann man "url übermitteln" auch so verstehen, dass die umgeschriebene URL an den Server übermittelt wird (was mod_rewrite ja generell tut).

Also falls er das wirklich als redirect will, dann hast du u.U. recht (falls die Umleitung nicht wirklich nur temporär ist), falls er das nur zur Vereinfachung der Links haben will, dann ist das Weglassen der bessere weg. Aufklären kann das aber nur der OP. :)

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hi.

Bin erst jetzt vom Einsatz zurück.

Also folgendes...

SEO in der release:

- user kann auf dyn seite zugreifen durch test.de/dynpage/category/title.html (1)

- user kann auf dyn seite direkt zugreifen durch test.de/scripts/getpage?id=1234 (2)

- die url wird nur intern geändert. es wird keine informationen an den client hierüber gesendet

- (1) muss auf jeden fall stehen bleiben. wegen ranking.

SEO jetzt (dev):

- user kann auf dyn seite zugreifen durch test.de/dynpage/category/title.html (1)

- user kann auf dyn seite direkt zugreifen durch test.de/scripts/getpage?id=1234 (2)

- die url (1) soll zu testzwecken in den getpage Aufruf (2) umgewandelt werden. und dann an den user übergeben werden (tempoäres redirect via mod_rewrite)

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

 Teilen

Fachinformatiker.de, 2022 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...

Wichtige Information

Fachinformatiker.de verwendet Cookies. Mehr dazu in unserer Datenschutzerklärung