Url met daarachter /(zoekterm).htm

Pagina: 1
Acties:

  • rik
  • Registratie: April 2000
  • Laatst online: 11-02 06:56
Als je kijkt naar de T.net pricewatch dan heb je de url


code:
1
http://tweakers.net/pricewatch/140641/3Dconnexion-SpacePilot-(USB-1.1)-prijzen.html


Ik ga er vanuit dat pricewatch(.dsp) als variabele 140641 (productcode) mee krijgt en alles daarachter (de slash) negeert. De tekst achter de slash lijkt me enkel voor zoekmachines interessant.

Nu zie ik dit steeds vaker toegepast worden, echter ik heb geen idee hoe de 'techniek' heet, via Google kon ik er ook niets over vinden.

Heeft iemand een aanknopingspunt voor me zodat ik dit zelf kan gaan implementeren? Hoe voer ik mijn phpscript dus met variabelen op bovenstaande manier?

  • Morax
  • Registratie: Mei 2002
  • Laatst online: 11:53
Ik denk dat de term die je zoekt "mod_rewrite" is :)

What do you mean I have no life? I am a gamer, I got millions!


  • frickY
  • Registratie: Juli 2001
  • Laatst online: 16:32
Op een Apache webserver wel ja.

  • MIster X
  • Registratie: November 2001
  • Laatst online: 01-01 23:41
En het toverwoord is... PATH_INFO.

Eerste resultaat in Google is http://www.naarvoren.nl/artikel/url.html:
Informatie in de URL wordt meestal in de querystring meegegeven, bijvoorbeeld:

http://example.com/nieuws....php?categorie_id=3&id=26

Hier worden de variabelen id en categorie_id meegegeven aan het script artikel.php. Dit script vraagt het bewuste artikel vervolgens op in een database en formuleert de html.

Er is echter nog een manier om informatie aan je script door te geven, en dat is met behulp van het “pad”. Dat ziet er zo uit:

http://example.com/nieuws/artikel.php/3/26

Apache doorloopt de URL tot het een bestand vindt dat het kan aanroepen, in dit geval "artikel.php". De rest van de URL is in PHP beschikbaar in de super-global PATH_INFO:

// pak de variabelen uit het pad
list($dummy, $id, $categorie_id) = explode('/', $_SERVER['PATH_INFO']);

De eerste waarde uit de array die explode teruggeeft is altijd leeg omdat PATH_INFO met een slash begint, die vangen we op in $dummy. Daarna volgen de variabelen die we nodig hebben. Je kunt uiteraard zoveel variabelen meegeven als je wilt. De volgorde van de variabelen in de URL is bij deze methode wel essentieel; het vergt de nodige vlijt om daar op te letten.

We zijn het vraagteken nu kwijt, maar het kan nog eleganter. Mooier is bijvoorbeeld:

http://example.com/nieuws/artikel/3/26

Hoe raak je de extensie “.php” kwijt? Om te beginnen hernoemen we “artikel.php” naar “artikel”. Zonder de “.php” extensie wordt het script echter niet uitgevoerd, maar direct als platte tekst naar de browser verzonden. Daarom moeten we Apache duidelijk maken dat het bestand “artikel” naar de PHP-parser gestuurd moet worden. En dat kan door een “.htaccess” bestandje aan te maken in de betreffende map, en er de volgende regels in op te nemen:

# "artikel" is een php-script
<Files artikel>
ForceType application/x-httpd-php
</Files>

  • -=bas=-
  • Registratie: Oktober 2000
  • Laatst online: 22-04-2025
De techniek zal vast wel een heel spannende naam hebben voor managers-die-er-toch-niets-van-begrijpen.

mod-rewrite lijkt het toverwoord te zijn :
http://forums.searchenginewatch.com/showthread.php?t=3925

Senile! Senile Oekaki


  • Hertog
  • Registratie: Juni 2002
  • Laatst online: 17:08

Hertog

Aut bibat, aut abeat

MIster X schreef op maandag 30 oktober 2006 @ 13:19:
En het toverwoord is... PATH_INFO.

Eerste resultaat in Google is http://www.naarvoren.nl/artikel/url.html:

[...]
En wat ze in dat artikel vergeten te vermelden is precies wat TS wil, namelijk dat je achter die /3/26 nog een /Naam_van_het_artikel kunt zetten :)

"Pray, v. To ask that the laws of the universe be annulled in behalf of a single petitioner, confessedly unworthy." --Ambrose Bierce, The Devil's Dictionary


  • MIster X
  • Registratie: November 2001
  • Laatst online: 01-01 23:41
Hertog schreef op maandag 30 oktober 2006 @ 13:22:
En wat ze in dat artikel vergeten te vermelden is precies wat TS wil, namelijk dat je achter die /3/26 nog een /Naam_van_het_artikel kunt zetten :)
Oh ja, je kunt er nog van alles achterplakken. Verderop in het artikel gaan ze nog wat verder en vervangen ze de cijfers geheel door woorden. Dat vind ik persoonlijk niet handig, omdat ik met een cijfers altijd kan verwijzen naar een autonummering, en een woord weer handmatig moet worden ingevoerd (waar vervolgens weer moet worden opgelet op het dubbel voorkomen, etc).

Ik gebruik zelf in ieder geval de in de CMS opgegeven paginatitels, waarbij de spaties worden vervangen door '-' (schijnt beter te werken dan '_'). Let op tekens die niet mogen voorkomen in een url. Kleine letters vind ik weer mooier dan hoofdletters.

Heeft het trouwens wel zin om er '.html' achter te plakken?

Verder heb ik de indruk dat http://search.msn.com/ deze vriendelijke urls niet opneemt in de index, maar dat ze de url afkappen na de scriptname. Kan iemand dat bevestigen?

[ Voor 19% gewijzigd door MIster X op 30-10-2006 13:36 ]


  • rik
  • Registratie: April 2000
  • Laatst online: 11-02 06:56
Heel erg snel heel wat antwoorden, dat is nou handig :)
Ik ga er eens even met Path_info stoeien, en daarna naar mod_rewrite kijken. De resultaten zal ik hier weer posten :)

  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 16:51

gorgi_19

Kruimeltjes zijn weer op :9

rik schreef op maandag 30 oktober 2006 @ 13:33:
Heel erg snel heel wat antwoorden, dat is nou handig :)
Ik ga er eens even met Path_info stoeien, en daarna naar mod_rewrite kijken. De resultaten zal ik hier weer posten :)
De FAQ geeft al een en ander aan informatie er over :)
Programming FAQ - PHP

Digitaal onderwijsmateriaal, leermateriaal voor hbo

Pagina: 1