Likes Likes:  0
Resultaten 1 tot 8 van de 8
Geen

Onderwerp: .htaccess rewrite

  1. #1
    Carl Janssen
    .htaccess rewrite
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    .htaccess rewrite

    Hallo,

    Even kort schetsen wat ik wil bereiken.

    Ik heb een domein, domein.be, en een daarop een subdomain,
    subdomein.domein.be.

    Nu wil ik dat domein.be een soort van spiegel wordt voor
    subdomein.domein.be. Stel dat er op subdomein.domein.be een directory
    'test' is, dan moet die ook bereikbaar worden via domein.be/test/.

    Ik heb al begrepen dat ik met de rewrite functie van .htacces kan/moet
    werken. Dit heb ik er ondertussen van gebakken:

    RewriteEngine on
    RewriteCond %{HTTP_HOST} ^www.domein.be$ [OR]
    RewriteCond %{HTTP_HOST} ^domein.be$
    RewriteRule ^(.*)$ http://subdomein.domein.be/$1 [R=301,L]

    Werkt perfect, maar ik wil nog een stapje verder gaan. Nu is domein.be dus
    een 'spiegel' voor subdomein.domein.be. Er zijn echter enkele directories
    op domein.be die *niet* naar subdomein.domein.be mogen doorverwijzen, zoals
    de cgi-bin. domein.be/cgi-bin/ moet dus gewoon zo blijven en niet gezocht
    gaan worden op subdomein.domein.be.

    Hoe maak ik met andere woorden 'uitzonderingen' op die rewrite regel van
    hierboven? Iemand tips?



  2. #2
    Ronald Klip
    .htaccess rewrite
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: .htaccess rewrite

    Carl Janssen schreef:
    > Hallo,


    Hoi,

    > Nu wil ik dat domein.be een soort van spiegel wordt voor
    > subdomein.domein.be. Stel dat er op subdomein.domein.be een directory
    > 'test' is, dan moet die ook bereikbaar worden via domein.be/test/.
    >
    > RewriteEngine on
    > RewriteCond %{HTTP_HOST} ^www.domein.be$ [OR]
    > RewriteCond %{HTTP_HOST} ^domein.be$
    > RewriteRule ^(.*)$ http://subdomein.domein.be/$1 [R=301,L]
    >
    > Werkt perfect, maar ik wil nog een stapje verder gaan. Nu is domein.be dus
    > een 'spiegel' voor subdomein.domein.be. Er zijn echter enkele directories
    > op domein.be die *niet* naar subdomein.domein.be mogen doorverwijzen, zoals
    > de cgi-bin. domein.be/cgi-bin/ moet dus gewoon zo blijven en niet gezocht
    > gaan worden op subdomein.domein.be.


    RewriteEngine on
    RewriteCond %{REQUEST_URI} !^/cgi-bin
    RewriteCond %{HTTP_HOST} ^www.domein.be$ [OR]
    RewriteCond %{HTTP_HOST} ^domein.be$
    RewriteRule ^(.*)$ http://subdomein.domein.be/$1 [R=301,L]

    Het uitroepteken betekent 'niet'. REQUEST_URI bevat het uri-stukje uit
    de request, bijv. /cgi-bin/bla.pl in "GET /cgi-bin/bla.pl HTTP/1.1". De
    toegevoegde RewriteCond kijkt dus alleen naar requests die niet met
    /cgi-bin beginnen.

    [niet getest...]

    --
    groet, Ronald

  3. #3
    Carl Janssen
    .htaccess rewrite
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: .htaccess rewrite

    "Ronald Klip" <nieuws@bladibla.net.invalid> schreef in bericht
    news:MPG.1b3fa679d28a7e479897eb@news.xs4all.nl...
    >
    > RewriteEngine on
    > RewriteCond %{REQUEST_URI} !^/cgi-bin
    > RewriteCond %{HTTP_HOST} ^www.domein.be$ [OR]
    > RewriteCond %{HTTP_HOST} ^domein.be$
    > RewriteRule ^(.*)$ http://subdomein.domein.be/$1 [R=301,L]
    >
    > Het uitroepteken betekent 'niet'. REQUEST_URI bevat het uri-stukje uit
    > de request, bijv. /cgi-bin/bla.pl in "GET /cgi-bin/bla.pl HTTP/1.1". De
    > toegevoegde RewriteCond kijkt dus alleen naar requests die niet met
    > /cgi-bin beginnen.
    >
    > [niet getest...]


    Ik wel. En het werkt! Bedankt. ;-)

    Nog twee kleine vraagjes:

    1/ Als ik nu meerdere directories wil uitsluiten, wordt dat dan gewoon
    RewriteCond %{REQUEST_URI} !^/directory1 !^/directory2?

    2/ Kan ik er ook voor zorgen dat in de adresbalk van je browser de
    oorspronkelijke URL blijft staan (domein.be/directory/) en niet dat waar
    naar doorverwezen wordt (subdomein.domein.be/directory/)?



  4. #4
    Ronald Klip
    .htaccess rewrite
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: .htaccess rewrite

    Carl Janssen schreef:
    > "Ronald Klip" <nieuws@bladibla.net.invalid> schreef in bericht
    > news:MPG.1b3fa679d28a7e479897eb@news.xs4all.nl...
    > >
    > > RewriteEngine on
    > > RewriteCond %{REQUEST_URI} !^/cgi-bin
    > > RewriteCond %{HTTP_HOST} ^www.domein.be$ [OR]
    > > RewriteCond %{HTTP_HOST} ^domein.be$
    > > RewriteRule ^(.*)$ http://subdomein.domein.be/$1 [R=301,L]
    > >
    > > Het uitroepteken betekent 'niet'. REQUEST_URI bevat het uri-stukje uit
    > > de request, bijv. /cgi-bin/bla.pl in "GET /cgi-bin/bla.pl HTTP/1.1". De
    > > toegevoegde RewriteCond kijkt dus alleen naar requests die niet met
    > > /cgi-bin beginnen.
    > >
    > > [niet getest...]

    >
    > Ik wel. En het werkt! Bedankt. ;-)
    >
    > Nog twee kleine vraagjes:
    >
    > 1/ Als ik nu meerdere directories wil uitsluiten, wordt dat dan gewoon
    > RewriteCond %{REQUEST_URI} !^/directory1 !^/directory2?


    Neen. Wat in elk geval zou moeten werken is

    RewriteCond %{REQUEST_URI} !^/directory1
    RewriteCond %{REQUEST_URI} !^/directory2
    RewriteCond %{REQUEST_URI} !^/directory3

    et cetera, hetgeen wellicht korter te schrijven is als

    RewriteCond %{REQUEST_URI} !^(/directory1)|(/directory2)|(/directory3)

    De | staat voor 'of'. Als er trouwens een patroon zit in die
    directorynamen, kan het indien gewenst nog korter gemaakt worden.

    > 2/ Kan ik er ook voor zorgen dat in de adresbalk van je browser de
    > oorspronkelijke URL blijft staan (domein.be/directory/) en niet dat waar
    > naar doorverwezen wordt (subdomein.domein.be/directory/)?


    Verwijder dan dat R=301 uit de RewriteRule:
    RewriteRule ^(.*)$ http://subdomein.domein.be/$1 [L]

    De R=301 stuurt een redirect-berichtje naar de browser, met statuscode
    301, waarop de meeste browsers de meegestuurde URL zullen opvragen. Die
    URL komt dan uiteraard in de adresbalk te staan. Zonder redirect niet.

    Wellicht had je de documentatie al gevonden; zoniet:
    http://httpd.apache.org/docs/mod/mod_rewrite.html en
    http://www.engelschall.com/pw/apache/rewriteguide/

    --
    groet, Ronald

  5. #5
    Carl Janssen
    .htaccess rewrite
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: .htaccess rewrite

    "Ronald Klip" <nieuws@bladibla.net.invalid> schreef in bericht
    news:MPG.1b3fb1d1b59a12cf9897ec@news.xs4all.nl...
    >
    > Neen. Wat in elk geval zou moeten werken is
    >
    > RewriteCond %{REQUEST_URI} !^/directory1
    > RewriteCond %{REQUEST_URI} !^/directory2
    > RewriteCond %{REQUEST_URI} !^/directory3
    >
    > et cetera, hetgeen wellicht korter te schrijven is als
    >
    > RewriteCond %{REQUEST_URI} !^(/directory1)|(/directory2)|(/directory3)
    >
    > De | staat voor 'of'. Als er trouwens een patroon zit in die
    > directorynamen, kan het indien gewenst nog korter gemaakt worden.


    Aha, bedankt!

    >
    > > 2/ Kan ik er ook voor zorgen dat in de adresbalk van je browser de
    > > oorspronkelijke URL blijft staan (domein.be/directory/) en niet dat waar
    > > naar doorverwezen wordt (subdomein.domein.be/directory/)?

    >
    > Verwijder dan dat R=301 uit de RewriteRule:
    > RewriteRule ^(.*)$ http://subdomein.domein.be/$1 [L]
    >
    > De R=301 stuurt een redirect-berichtje naar de browser, met statuscode
    > 301, waarop de meeste browsers de meegestuurde URL zullen opvragen. Die
    > URL komt dan uiteraard in de adresbalk te staan. Zonder redirect niet.


    OK, dan doe ik het op die manier.

    > Wellicht had je de documentatie al gevonden; zoniet:
    > http://httpd.apache.org/docs/mod/mod_rewrite.html en


    Deze wel, maar uiteindelijk zag ik door de bomen het bos niet meer.

    > http://www.engelschall.com/pw/apache/rewriteguide/


    Deze nog niet. Ik neem 'm eens rustig door.

    Bedankt voor de hulp en de tips! ;-)



  6. #6
    Carl Janssen
    .htaccess rewrite
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: .htaccess rewrite


    "Ronald Klip" <nieuws@bladibla.net.invalid> schreef in bericht
    news:MPG.1b3fb1d1b59a12cf9897ec@news.xs4all.nl...
    > Carl Janssen schreef:
    >
    > > 2/ Kan ik er ook voor zorgen dat in de adresbalk van je browser de
    > > oorspronkelijke URL blijft staan (domein.be/directory/) en niet dat waar
    > > naar doorverwezen wordt (subdomein.domein.be/directory/)?

    >
    > Verwijder dan dat R=301 uit de RewriteRule:
    > RewriteRule ^(.*)$ http://subdomein.domein.be/$1 [L]
    >
    > De R=301 stuurt een redirect-berichtje naar de browser, met statuscode
    > 301, waarop de meeste browsers de meegestuurde URL zullen opvragen. Die
    > URL komt dan uiteraard in de adresbalk te staan. Zonder redirect niet.


    Dit lijkt wel niet te werken. In de adresbalk komt nog steeds het nieuwe
    adres te staan. Op
    http://httpd.apache.org/docs/mod/mod...ml#RewriteRule lees ik:

    If no code is given a HTTP response of 302 (MOVED TEMPORARILY) is used.

    Misschien heeft dat er wat mee te maken?



  7. #7
    Ronald Klip
    .htaccess rewrite
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: .htaccess rewrite

    Carl Janssen schreef:
    >
    > "Ronald Klip" <nieuws@bladibla.net.invalid> schreef in bericht
    > news:MPG.1b3fb1d1b59a12cf9897ec@news.xs4all.nl...
    > > Carl Janssen schreef:
    > >
    > > > 2/ Kan ik er ook voor zorgen dat in de adresbalk van je browser de
    > > > oorspronkelijke URL blijft staan (domein.be/directory/) en niet dat waar
    > > > naar doorverwezen wordt (subdomein.domein.be/directory/)?

    > >
    > > Verwijder dan dat R=301 uit de RewriteRule:
    > > RewriteRule ^(.*)$ http://subdomein.domein.be/$1 [L]
    > >

    > Dit lijkt wel niet te werken. In de adresbalk komt nog steeds het nieuwe
    > adres te staan.


    Hmm, ja, ik zat te slapen. Dat subdomein moet overigens wel op dezelfde
    server staan, anders kan je alleen maar redirecten.
    Misschien kun je eea dan rewriten door naar het absolute pad te
    verwijzen (maar nu ga ik gokken):

    RewriteRule ^(.*)$ /pad/naar/webroot/van/subdomein/$1 [L]

    > Op
    > http://httpd.apache.org/docs/mod/mod...ml#RewriteRule lees ik:
    >
    > If no code is given a HTTP response of 302 (MOVED TEMPORARILY) is used.
    >
    > Misschien heeft dat er wat mee te maken?


    Ze doelen dan op de vervanging van R=301 door alleen de vlag R.

    --
    groet, Ronald

  8. #8
    Carl Janssen
    .htaccess rewrite
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: .htaccess rewrite

    "Ronald Klip" <nieuws@bladibla.net.invalid> schreef in bericht
    news:MPG.1b3fc2c3fe8f5d049897ed@news.xs4all.nl...
    >
    > RewriteRule ^(.*)$ /pad/naar/webroot/van/subdomein/$1 [L]


    Dit levert helaas een 500 server error op.

    Maar goed, ik ben al meer dan tevreden dat het 'hoofdprobleem' is opgelost.
    Dank voor je hulp.



Webhostingtalk.nl

Contact

  • Rokin 113-115
  • 1012 KP, Amsterdam
  • Nederland
  • Contact
© Copyright 2001-2026 Webhostingtalk.nl.
Web Statistics