Ik heb voor mijn site 2 soorten files:
- http://mijnsite.be/index.php (communityportaal)
- http://mijnsite.be/blog.php?lid=$user (userpage)
Nu heb ik met mod rewrite al kunnen maken dat de userpage gewoonweg http://mijnsite.be/$user/ wordt, en dat werkt dan ook faalloos. Maar als ik echter dit ook voor de index wil doen, bijvoorbeeld http://mijnsite.be/about/, gaat mijn htaccess file dit ntuurlijk zien als een user.
Ik bedacht dan zoals op lijn 8, te filteren, namelijk als de request uri niet index is, dat ie dan pas blog.php mag laden:
- <IfModule mod_rewrite.c>
- RewriteEngine on
- RewriteCond %{REQUEST_FILENAME} !-f
- RewriteCond %{REQUEST_FILENAME} !-d
- RewriteRule ^(home|about|forum|landen|zoeken)$ index.php?p=$1 [L,NC,QSA,R=301]
- RewriteCond %{REQUEST_URI} !=/index\.php$ [NC]
- RewriteRule ^(.*)$ blog.php?lid=$1 [L,QSA]
- </IfModule>
Maar dit werkt helaas niet..?
Graag hier een juiste oplossing voor en geen hack ŕ la maak een user aan die about/fourm/landen/whatever heet en redirect naar de gewenste pagina.
Mvg,
Gert
- Mod_rewrite.
-
24-05-2009, 17:29 #1
- Berichten
- 99
- Lid sinds
- 17 Jaar
Mod_rewrite.
-
-
25-05-2009, 08:19 #2
- Berichten
- 376
- Lid sinds
- 18 Jaar
mod_rewrite controleert van boven naar beneden en gaat door bij de eerste voorwaarde waaraan het voldoet. Controleer dus eerst of er in de URL /about/ of iets dergelijks staat, en als die er allemaal niet staan, is het een user, daar moet hij dan als laatst aan voldoen.
-
25-05-2009, 08:45 #3
- Berichten
- 99
- Lid sinds
- 17 Jaar
zoals je ziet laad hij blog.php: http://reisblogger.czone.be/about/
en dit is de url die hij zou moeten laden: http://reisblogger.czone.be/index.php?p=about
RewriteRule ^(home|about|forum|landen|zoeken)$ index.php?p=$1 [L,NC,QSA,R=301] zou het toch moeten doen dan?
Ik kom er echt niet uit..
Aanvullend bericht:
Met de volgende code:
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(home|about|forum|landen|zoeken)$ http://reisblogger.czone.be/index.php?p=$1 [L,NC,QSA,R=301]
RewriteRule ^(home|about|forum|landen|zoeken)/$ http://reisblogger.czone.be/index.php?p=$1 [L,NC,QSA,R=301]
RewriteRule ^([a-zA-Z0-9_-]+)$ blog.php?lid=$1 [L,QSA]
RewriteRule ^([a-zA-Z0-9_-]+)/$ blog.php?lid=$1 [L,QSA]
</IfModule>
Dan kan ik wel op http://reisblogger.czone.be/about/ connecten, en geeft hij de juiste pagina weer, maar hij herschrijft de url automatisch terug naar ?p=about.. echt vreemd. Nu goed, dat zal misschien aan mijn code liggen.Laatst aangepast door Gert B : 25-05-2009 om 08:58 Reden: Automatisch samengevoegd.
Plaats een
- + Advertentie
- + Onderwerp
Marktplaats
Webmasterforum
- Websites algemeen
- Sitechecks
- Marketing
- Domeinen algemeen
- Waardebepaling
- CMS
- Wordpress
- Joomla
- Magento
- Google algemeen
- SEO
- Analytics
- Adsense
- Adwords
- HTML / XHTML
- CSS
- Programmeren
- PHP
- Javascript
- JQuery
- MySQL
- Ondernemen algemeen
- Belastingen
- Juridisch
- Grafisch ontwerp
- Hosting Algemeen
- Hardware Info
- Offtopic