PDA

View Full Version : Seitennamen Sumafreundlich Generieren


Taipan
06-08-2007, 04:27 PM
Hallo zusammen,

kann mir bitte jemand sagen, wie ich die Seitenbezeichnung Sumafreundlich gestallten kann?

Hier ein Bsp.
Ich möchte, das alle Seiten (p=2, p=3 etc.) die automatisch erstellt werden, nicht die Bezeichnung /webkataloge/?p=2 sondern folgende Bezeichnung
/webkataloge/page-2.html bekommen.

Was muss ich ins .htaccess Eintragen, damit dies Automatisch geschieht?

Danke schon mal
Mike

regg
06-08-2007, 05:55 PM
Hallo,
welceh Version nutzt du ?
Bei der v3.2 sieht das folgendermaßen aus:
http://www.regon.de/internet/page-2.html

Siehe auch:
http://www.phplinkdirectory.com/forum/showthread.php?t=14671


Gruß,
regg

Taipan
06-10-2007, 01:59 PM
Hi regg,

ich benutze die vers. 2.1. Weisst du/ihr zufällig, wie ich es dort verändern kann?
PS. Ausserdem möchte ich die Seiten Top Hits und Aktuelle Einträge - index.php?p=h und index.php?p=d auf statische Seiten umleiten. Die Seiten sind zwar erstellt wurden und funktionieren auch wunderbar, aber Redirect will einfach nicht funken :(

Redirect 301 ^index.php?p=d http://domain.de/aktuell.php

LG
T

regg
06-10-2007, 02:55 PM
Hi regg,

ich benutze die vers. 2.1. Weisst du/ihr zufällig, wie ich es dort verändern kann?
PS. Ausserdem möchte ich die Seiten Top Hits und Aktuelle Einträge - index.php?p=h und index.php?p=d auf statische Seiten umleiten. Die Seiten sind zwar erstellt wurden und funktionieren auch wunderbar, aber Redirect will einfach nicht funken :(

Redirect 301 ^index.php?p=d http://domain.de/aktuell.php

LG
T

Mhh ...
versuche mal das hier in deiner htacces einzubauen und dann deine php / tpl Dateien anzupassen...
Ansonsten empfehle ich dir die Verison 3!

## Pagination Rewrite
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule (.*)page-(\d+)\.htm[l]?(.*)$ $1/?p=$2 [PT,NC]


Top Hits und Aktuelle Einträge

Bitte folgendes in der htacces hinzufügen:

## Page Rewrite
RewriteRule (.*)neue-links(.*).htm[l]?$ index.php?p=d [QSA,NC]
RewriteRule (.*)top-links(.*).htm[l]?$ index.php?p=h [QSA,NC]


NACH

# URL rewrite rules
<IfModule mod_rewrite.c>
RewriteEngine On


Der Aufruf sieht dann so oder so ähnlich aus:

<a href="{$smarty.const.DOC_ROOT}/neue-links.html" title="{l}Browse latest submitted links{/l}">{l}Latest Links{/l}</a>
<a href="{$smarty.const.DOC_ROOT}/top-links.html" title="{l}Browse most popular links{/l}">{l}Top Hits{/l}</a>


Noch einen schönen Sonntag!

Gruß,
regg

Taipan
06-10-2007, 09:08 PM
Danke für dein Feedback regg.

versuche mal das hier in deiner htacces einzubauen und dann deine php / tpl Dateien anzupassen...
Wo genau soll ich die Veränderungen vornehmen?

So schaut mein .htaccess aktuell aus und es Funkt nicht.

Options -Indexes

## Follow symbolic links in this directory
Options +FollowSymLinks
RewriteEngine on
RewriteCond %{HTTP_HOST} .
RewriteCond %{HTTP_HOST} !^domain\.de
RewriteRule (.*) http://domain.de/$1 [R=301,L]

RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /(([^/]+/)*)index\.php\ HTTP/
RewriteRule index\.php$ http://domain.de/%1 [R=301,L]

# Set the default handler
DirectoryIndex index.php

# URL rewrite rules
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule (.*)aktuell(.*).php[l]?$ index.php?p=d [QSA,NC]
RewriteRule (.*)top-hits(.*).php[l]?$ index.php?p=h [QSA,NC]

## Category redirect
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule ^(.*)$ index.php [QSA,L]
</IfModule>

regg
06-10-2007, 10:02 PM
Danke für dein Feedback regg.


Wo genau soll ich die Veränderungen vornehmen?

So schaut mein .htaccess aktuell aus und es Funkt nicht.

Options -Indexes

## Follow symbolic links in this directory
Options +FollowSymLinks

RewriteEngine on

RewriteCond %{HTTP_HOST} .
RewriteCond %{HTTP_HOST} !^domain\.de
RewriteRule (.*) http://domain.de/$1 [R=301,L]

RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /(([^/]+/)*)index\.php\ HTTP/
RewriteRule index\.php$ http://domain.de/%1 [R=301,L]

Was soll das denn sein???


# Set the default handler
DirectoryIndex index.php

# URL rewrite rules
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule (.*)aktuell(.*).php[l]?$ index.php?p=d [QSA,NC]
RewriteRule (.*)top-hits(.*).php[l]?$ index.php?p=h [QSA,NC]

## Category redirect
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule ^(.*)$ index.php [QSA,L]
</IfModule>

Taipan
06-11-2007, 12:07 AM
Was soll das denn sein???

Du hast geschrieben, das ich nach...
# URL rewrite rules
<IfModule mod_rewrite.c>

... folgendes einfügen soll!
RewriteRule (.*)aktuell(.*).php[l]?$ index.php?p=d [QSA,NC]
RewriteRule (.*)top-hits(.*).php[l]?$ index.php?p=h [QSA,NC]

und das habe ich gemacht.

Rest der Code ist Orginal-Eintrag?!
## Category redirect
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule ^(.*)$ index.php [QSA,L]
</IfModule>

regg
06-11-2007, 02:08 PM
Ich meine das hier:


RewriteCond %{HTTP_HOST} .
RewriteCond %{HTTP_HOST} !^domain\.de
RewriteRule (.*) http://domain.de/$1 [R=301,L]

RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /(([^/]+/)*)index\.php\ HTTP/
RewriteRule index\.php$ http://domain.de/%1 [R=301,L]

Taipan
06-12-2007, 01:22 AM
Ich weiss es nicht. Wie gesagt es ist ein original Eintrag, was bereits vorhanden war.

Also die Vorschläge, was du gemacht hast, haben nicht funktioniert?! Oder habe ich dich Falsch verstanden?

regg
06-12-2007, 01:50 PM
Hallo,
habe das nur mit der Version 3.0.6, 3.2 getestet!
Versuche bitte einmal dies herauszunehmen:
RewriteEngine on

RewriteCond %{HTTP_HOST} .
RewriteCond %{HTTP_HOST} !^domain\.de
RewriteRule (.*) http://domain.de/$1 [R=301,L]

RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /(([^/]+/)*)index\.php\ HTTP/
RewriteRule index\.php$ http://domain.de/%1 [R=301,L]

raimond
06-12-2007, 06:35 PM
@regg
das obere ist für die weiterleitung gedacht z.B. www . domain . de nach domain . de
macht man um DC zu vermeiden, was bei Linktausch oder aber bei seiten die freiwillig nen Link bekommen.

@taipan versuch mal


RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} !^www\.domain\.de$ [NC] [OR]
RewriteRule ^(.*)$ http://www.domain.de$1 [R=301,L]
RewriteRule ^neue-seiten(.*).html$ index.php?p=d [L]
RewriteRule ^top-seiten(.*).html$ index.php?p=h [L]


ansehen kannste es auf der Seite welche ich per PN gesendet habe. Und dort geht es. Obige rewriterule macht halt jetzt alles von domain .de auf www . domain . de

wenn dies dann funzt ersetzte einfach meine Rule mit der deinigen
RewriteCond %{HTTP_HOST} !^domain\.de
RewriteRule (.*) http://domain.de/$1 [R=301,L]


achja und im Template Dir das top_bar.tpl oder wie die bei Dir heist einfach mit den jeweiligen urlnamen austauschen also sprich das index.php?p=h mit top-seiten.html usw. Aber nicht das {$smarty.const.DOC_ROOT}/ entfernen, nur das nach dem /

hoffe es hilft

anzumerken wäre noch das dieses modrewrite sogar nen 200er ausgibt und nicht wie bei der 3.1 nen 404er.....seltsam....

Gruss
raimond