Hov. Du er ikke logget ind.
DU SKAL VÆRE LOGGET IND, FOR AT INTERAGERE PÅ DENNE SIDE

Undgå duplicate content ved brug af mod_rewrite?

Side 1 ud af 1 (8 indlæg)
  • 1
Fra Århus
Tilmeldt 13. Feb 08
Indlæg ialt: 337
Skrevet kl. 21:27
Hvor mange stjerner giver du? :

Først min .htaccess-fil:

RewriteRule ([0-9]+)/$ post.php?id=$1

Hvis man kigger på nedenstående link så ses det at Google har indekseret det samme indhold på en masse forskellige URL's:

http://www.google.dk/search?q=allintitle:dan
ske+split-test+cases+site:jacobworsoe.dk&num=100&hl=da&lr=&safe=off&as_qdr=all&filter=0

F.eks. kan den originale:
http://www.jacobworsoe.dk/danske-split-test-cases-17/

Kan også findes via denne:
http://www.jacobworsoe.dk/spor-soegemaskinernes-robotter-i-google-analytics-16/danske-split-test-cases-17/

Hvilket skyldes den måde min .htacess er lavet på. Kan den laves så man kun kan finde den på den originale URL, men den anden enten giver en 404 eller kan 301-redirectes til den originale?

Vil det være nemmere at lave en løsning, hvis jeg laver den om til at ende på .html istedet for / ?

Tilmeldt 11. May 09
Indlæg ialt: 199
Fra  Public Static Amino Skrevet kl. 08:51
Hvor mange stjerner giver du? :

Jeg tror du skal kigge lidt på canonical rewrites, så kan du vist godt slippe af med problemet.

Man laver jo også redirects fra www.example.com til example.com for at undgå duplicate content, og det er stort set det samme du skal lave i dette tilfælde. Du skal så ind og lave om for dine kategorier, eller hvordan du nu ordner indhold.

Du skal lave en RewriteCond der tjekker om det er en given kategori, og en RewriteRule der laver en 301 til den adresse du vil fokusere på.

Alternativt kan du manuelt lave 301 redirects fra det ene til det andet, blot ved at indsætte redirect 301 mauelt i din htaccess eller .conf fil.

Jeg abonnerer ikke på tråde, da jeg ikke gider tæppebombes med reklame-mails uden andet indhold. Send PM hvis du mangler opfølgning.

Fra København
Tilmeldt 18. Sep 08
Indlæg ialt: 131
Skrevet kl. 10:49
Hvor mange stjerner giver du? :

Det er ikke et problem som skal løses med .htaccess eller canonical url.

Din omskrivning er alt for simpel, og tillader en masse uhensigtsmæssige kald. Jeg kunne f.eks. linke til http://www.jacobworsoe.dk/Jacob-lugter-af-tis/danske-split-test-cases-17/

eller http://www.jacobworsoe.dk/Jacob-er-en svindler-17/

Din .htaccess bør føre alle kald til filer der ikke eksister til din index.php, hvor du så kan analysere url'en.

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]

 

 

Fra Århus
Tilmeldt 13. Feb 08
Indlæg ialt: 337
Skrevet kl. 12:22
Hvor mange stjerner giver du? :

Torben Lundsgaard:
Din .htaccess bør føre alle kald til filer der ikke eksister til din index.php, hvor du så kan analysere url'en.

Jeg vil godt give dig ret i at problemet ligger i at min omskrivning er for simpel, mit problem er bare at jeg ikke ved hvordan jeg kan lave den mere avanceret :)

De enkelte artikler ligger ikke som filer, men bliver bare trukket ud af databasen med det id som står til sidst i url'en f.eks. "17".

Vil det hjælpe noget at indsætte en kolonne i tabellen som f.eks. indeholder "danske-split-test-cases-17" som jeg så kan matche op imod, istedet for bare at kigge på id'et ?

Fra Aalborg
Tilmeldt 24. Sep 07
Indlæg ialt: 445
Fra  LOEVGAARD ApS Skrevet kl. 12:55
Hvor mange stjerner giver du? :

Prøv med noget i retning af

^[a-zA-Z0-9\-]\-([0-9]+)/$ post.php?id=$1

Fra Aalborg
Tilmeldt 24. Sep 07
Indlæg ialt: 445
Fra  LOEVGAARD ApS Skrevet kl. 12:57
Hvor mange stjerner giver du? :
Fra Århus
Tilmeldt 13. Feb 08
Indlæg ialt: 337
Skrevet kl. 19:54
Hvor mange stjerner giver du? :

Joachim Løvgaard:

Jeg har også skrevet lidt om det her: Undgå duplicate content

Fed artikel, den er jo lige i øjet. Hvis vi nu tager udgangspunkt i denne artikel på mit site:

http://www.jacobworsoe.dk/google-and-china-20/

Den har i forvejen en kolonne i tabellen med id=20 men så skal den derudover også have en kolonne der f.eks. hedder URI som har værdien "google-and-china" som jeg så tjekker op imod at både id og URI passer med det der ligger i databasen for id=20 ?

Jeg kan dog ikke helt gennemskue om den også vil fange nedenstående som fejl og redirecte til den rigtige?

http://www.jacobworsoe.dk/foobar-17/google-and-china-20/

I dette tilfælde skal den jo kigge på id=20 og se at URI ikke skal være "foobar-17/google-and-china" som det jo er i ovenstående. Vil den kunne det?

 

Fra Århus
Tilmeldt 13. Feb 08
Indlæg ialt: 337
Skrevet kl. 21:48
Hvor mange stjerner giver du? :

Så har jeg fået lavet en løsning på problemet som virker. Med udgangspunkt i Joachim's artikel har jeg lavet denne rewrite rule:

RewriteRule ^([/a-zA-Z0-9\-]+)\-([0-9]+)/$ post.php?uri=$1&id=$2

Disse to variabler kigger jeg så nærmere på i post.php ligesom i artiklen. Jeg har skrevet en / foran a-z for at den også kunne klare en fejl ala /foobar-17/foobar-20/ og ikke bare /fobar-20/

Jeg prøvede først at skrive den som a-zA-Z0-9\-/ men det virkede ikke. Bliver den også "nulstillet" af den \ eller hvad?

Jeg har desuden prøvet at lave denne løsning, som også gør det muligt at man kan skrive /foob!!ar-20/ og stadig bliver redirected til den rigtige:

RewriteRule ^(.+)\-([0-9]+)/$ post.php?uri=$1&id=$2

Er der noget problem ved at bruge denne løsning?

Side 1 ud af 1 (8 indlæg)