Op deze website gebruiken we cookies om content en advertenties te personaliseren, om functies voor social media te bieden en om ons websiteverkeer te analyseren. Ook delen we informatie over uw gebruik van onze site met onze partners voor social media, adverteren en analyse. Deze partners kunnen deze gegevens combineren met andere informatie die u aan ze heeft verstrekt of die ze hebben verzameld op basis van uw gebruik van hun services. Meer informatie.

Akkoord

Vraag & Antwoord

Webprogrammeren & scripting

mod_rewrite

Anoniem
_arno_
6 antwoorden
  • Hallo heren,

    Ik probeer voor elkaar te krijgen dat alles via index.php loopt dus bijvoorbeeld:
    http://www.domein.nl/site/lala
    moet worden
    index.php?1=site&2=lala

    Huidige situatie is options multiviews, maar dan zoekt hij naar site.php/lala, dit is geen praktische situatie.
    Als ik dit met 404 opvang werkt $_POST niet meer en vermoeilijkt dit wat de situatie.
    Nu heb ik wat zitten googlen, maar er is niemand die nou met een duidelijke opzet komt.
    Nu bak ik helaas niks van mod_rewrite, dus vandaar dat ik hier kom vragen.
    Iemand een oplossing?
    Vriendelijk bedankt,
    Arno
  • Ik heb het in het verleden wel eens gedaan, volgens mij moet het volgende werken, maar succes niet gegarandeerd…[code:1:3a2b7bf03b]<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]
    </IfModule>[/code:1:3a2b7bf03b]Nu kan je in index.php de waarde van de opgevraagde pagina benaderen met $_SERVER["REQUEST_URI"]. Aan de hand van die waarde kan je vervolgens de pagina laten zien die je wil laten zien.

    Let er wel op dat je server nu geen 404-errors meer geeft, die zal je nu dus expliciet met headers moeten meegeven in het geval dat je gevraagde pagina niet bestaat.

    - Bas
  • Met die volgende code gaat hij nog steeds naar de 404 eerst, moeten er anders nog specifieke server instellingen gezet worden voor dit?
    AllowOveride staat op all trouwens.
  • De code die ik gaf komt rechtstreeks uit een WordPress installatie die gebruik maakt van "Nice URI's". Volgens mij zou het moeten werken op een standaardconfiguratie, maar dat weet ik eerlijk gezegd niet…

    Wat heb je nu als .htaccess en wat is je index.php?

    - Bas
  • een simpele echo in mijn 404.php blijkt het uit dat hij daar nog steeds langs loopt.
    Ik heb [code:1:b984cc5bd7]<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]
    </IfModule>[/code:1:b984cc5bd7]
    , en [code:1:b984cc5bd7]
    RewriteEngine On
    RewriteBase /
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L] [/code:1:b984cc5bd7] geprobeerd
    De laatste gaf een 500, wat blijkt dat jou code in theorie zou moeten werken.
    Denk dat het ergens aan server instellingen ligt, daar zal ik even naar moeten kijken
  • Als de laatste een 500-error (Internal Server Error, als ik me niet vergis) geeft dan vermoed ik dat je simpelweg geen mod_rewrite hebt geinstalleerd/geactiveerd. Daar zou ik maar eens goed naar kijken!

    - Bas

Beantwoord deze vraag

Dit is een gearchiveerde pagina. Antwoorden is niet meer mogelijk.