onzichtbare rewrite van subdmain naar categorie

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Wildone

wildone

07/01/2009 16:05:00
Quote Anchor link
Oplossing die deels werkt mbv .htacces:
RewriteRule ^.*$ http://www.mijndomein.nl/cat/catname [L,R=301]

Maar nu wordt de redirect zichtbaar uitgevoerd .
Dus de url is nu http://www.mijndomein.nl/cat/catname
ipv http://kamp.mijndomein.nl/

Hoe kan ik nu de url zichtbaar laten als http://kamp.mijndomein.nl/ en feitelijk http://www.mijndomein.nl/cat/catname laten doen?
 
PHP hulp

PHP hulp

16/11/2024 01:37:19
 
Joren de Wit

Joren de Wit

07/01/2009 16:37:00
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} !www.jouwsite.nl$ [NC]
RewriteCond %{HTTP_HOST} ^(www.)?([a-z0-9-]+).jouwsite.nl [NC]
RewriteRule (.*) /cat/%2/$1 [L]
Gewijzigd op 01/01/1970 01:00:00 door Joren de Wit
 
Wildone

wildone

07/01/2009 17:17:00
Quote Anchor link
Blanche een uitleg zou prettig zijn. Kan er geen kaas van bakken.
Zie op het eerste gezicht geen connectie tot mijn vraag.

Zoek een oplossing en ja ik heb al vele uren naar voorbeelden gekeken, maar niet kunnen vinden.
 
Joren de Wit

Joren de Wit

07/01/2009 17:27:00
Quote Anchor link
Het is een toepassing van een stukje mod rewrite, maar goed een uitleg van de verschillende regels:

De eerste twee regels zullen je bekend voorkomen, dus daar ga ik niets over zeggen. De eerste RewriteCond controleert of je site niet gewoon via www.jouwsite.nl bezocht wordt. In dat geval moet er namelijk niets gedaan worden. De tweede RewriteCond kijkt of er een subdomein opgegeven is en matched dat gedeelte.

De %2 in de RewriteRule is het gedeelte dat in de RewriteCond gematched werd (de naam van je subdomein dus) en de $1 is het gedeelte dat achter de RewriteBase stond. Je zult deze regel dus zelf nog even aan moeten passen zodat de subdomeinnaam op de goede plaats in de url komt te staan. (Ik heb hem nu even aangepast zoals ik denk dat hij zou kunnen zijn).
 
PHP Newbie

PHP Newbie

07/01/2009 17:50:00
Quote Anchor link
Blanche, hiermee is wel het 301 (move permanently) verdwenen. Zoekmachine technisch niet zo goed...
 

07/01/2009 18:21:00
Quote Anchor link
Voor zover ik weet kun je geen 301 en een "onzichtbare rewrite" tegelijkertijd doen.
 
Joren de Wit

Joren de Wit

07/01/2009 18:22:00
Quote Anchor link
PHP Newbie schreef op 07.01.2009 17:50:
Blanche, hiermee is wel het 301 (move permanently) verdwenen. Zoekmachine technisch niet zo goed...
De TS geeft nergens te kennen dat dat de bedoeling is, of zie ik het verkeerd?
 
PHP Newbie

PHP Newbie

07/01/2009 18:30:00
Quote Anchor link
In de TS staat:
RewriteRule ^.*$ http://www.mijndomein.nl/cat/catname [L,R=301]

Dus het lijkt me van wel, maar weet het natuurlijk ook niet ;-)
 
Joren de Wit

Joren de Wit

07/01/2009 18:36:00
Quote Anchor link
Nope, de R flag zorgt altijd voor een zichtbare redirect. Dus dat kan onmogelijk onzichtbaar worden...
 
Wildone

wildone

07/01/2009 19:54:00
Quote Anchor link
Met de feitelijke urls krijg ik niets te zien. Sorry ben zelf hierin een leek.
Het volgende heb ik ingevoerd;

RewriteCond %{HTTP_HOST} !www.orime.nl$ [NC]
RewriteCond %{HTTP_HOST} ^airco.orime.nl [NC]
RewriteRule (.*) /cat/%2/$1/70/Klimaat.html [L]

Heb de volgende vragen:
1) de 2de Conditie heb ik niet willekeurig gemaakt maar definitief immers er zijn meerdere subdomains. Klopt deze stellingname of moet ik jouw voorbeeldregel toepassen %{HTTP_HOST} ^(www.)?([a-z0-9-]+)orime.nl [NC]
2) de juiste redirect gebeurt naar
http://www.orime.nl/index.php/cat/70/Klimaat.html
voor airco.orime.nl. Hoe schrijf ik nu die RewriteRule?
Jouw oplossing kan volgens mij niet omdat er vars binnen de constante worden geplaatst. Volgens mij zou het dan
RewriteRule (.*) /%2/$1/cat/70/Klimaat.html [L]
Gewijzigd op 01/01/1970 01:00:00 door wildone
 
Joren de Wit

Joren de Wit

07/01/2009 19:58:00
Quote Anchor link
Als ik het goed begrijp wil je dus handmatig instellen dat airco.orime.nl naar die url verwijst? Doe dat dan zo:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
RewriteCond %{HTTP_HOST} ^airco.orime.nl [NC]
RewriteRule ^(.*)$ /index.php/cat/70/Klimaat.html [L]

Maar goed, dan heb je dus het hele dynamische eruit gehaald en zul je voor elk 'subdomein' zo'n regel aan moeten maken...
 
Wildone

wildone

07/01/2009 20:09:00
Quote Anchor link
Uiteraard kies ik voor dynamisch omdat er vele subdomains zullen volgen.
Maar echt begrijpen doe ik het niet.
Als je vele subdomains hebt die allemaal naar andere urls verwijzen dan moet je het systeem toch een handreiking geven wat te doen? Of kan dat met onderstaande voorbeelden toch dynamisch?

Voorbeelden:
http://airco.orime.nl -> http://www.orime.nl/index.php/cat/70/Klimaat.html
http://kachels.orime.nl -> http://www.orime.nl/index.php/cat/112/Kachels.html
http://polijsten.orime.nl -> http://www.orime.nl/index.php/cat/10/Polijsten.html
etc.
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.