RewriteRule 404 error
Hallo, ik probeer al een week de RewriteRule te laten werken, maar het lukt mij niet.
Ik gebruik Xampp en heb mod_rewrite aan staan.
Mijn .htaccess:
RewriteEngine On
RewriteBase /
RewriteRule ^/profiel/(\w+)$ /profiel.php?naam=$1 [L]
Dus ik wil bij http://localhost/profiel.php?naam=test dat ik die pagina kan bezoeken op http://localhost/profiel/test
Als ik dan http://localhost/profiel/test bezoek krijg ik een 404 error. Wat doe ik fout?
Ik gebruik Xampp en heb mod_rewrite aan staan.
Mijn .htaccess:
RewriteEngine On
RewriteBase /
RewriteRule ^/profiel/(\w+)$ /profiel.php?naam=$1 [L]
Dus ik wil bij http://localhost/profiel.php?naam=test dat ik die pagina kan bezoeken op http://localhost/profiel/test
Als ik dan http://localhost/profiel/test bezoek krijg ik een 404 error. Wat doe ik fout?
Gewijzigd op 02/10/2011 12:32:55 door Jurre de jongh
Gesponsorde koppelingen:
Haal die / eens weg voor profiel.
Ik heb nog steeds 404 error.
.htaccess:
RewriteEngine On
RewriteBase /
RewriteRule ^profiel/(\w+)$ profiel.php?naam=$1 [L]
.htaccess:
RewriteEngine On
RewriteBase /
RewriteRule ^profiel/(\w+)$ profiel.php?naam=$1 [L]
RewriteRule ^profiel/test(\?.+?)?$ /404.html [QSA]
RewriteRule ^profiel/profiel.php\?naam=(.+?)(&.+?)?$ profiel/test$ [QSA]
RewriteRule ^profiel/profiel.php\?naam=(.+?)(&.+?)?$ profiel/test$ [QSA]
Gewijzigd op 02/10/2011 13:59:24 door Jacco Brandt
Jacco Brandt op 02/10/2011 13:58:47:
RewriteRule ^profiel/test(\?.+?)?$ /404.html [QSA]
RewriteRule ^profiel/profiel.php\?naam=(.+?)(&.+?)?$ profiel/test$ [QSA]
RewriteRule ^profiel/profiel.php\?naam=(.+?)(&.+?)?$ profiel/test$ [QSA]
Hoe bedoel je? Ik snap hem niet echt.
Zet dit in je .htaccess:
RewriteEngine On
RewriteBase /
RewriteRule ^profiel/test(\?.+?)?$ /404.html [QSA]
RewriteRule ^profiel/profiel.php\?naam=(.+?)(&.+?)?$ profiel/test$ [QSA]
RewriteEngine On
RewriteBase /
RewriteRule ^profiel/test(\?.+?)?$ /404.html [QSA]
RewriteRule ^profiel/profiel.php\?naam=(.+?)(&.+?)?$ profiel/test$ [QSA]
Ik snap er echt helemaal niks van, ik doe dat in mijn .htaccess en ga dan naar http://localhost/profiel/test, maar krijg nog steeds 404 error.
Dat was toch de bedoeling?
Wacht, ik heb je verkeerd begrepen. Probeer dit eens:
RewriteRule ^profiel/(.+?)(\?.+?)?$ /profiel.php?naam=$1 [QSA]
Wacht, ik heb je verkeerd begrepen. Probeer dit eens:
RewriteRule ^profiel/(.+?)(\?.+?)?$ /profiel.php?naam=$1 [QSA]
Gewijzigd op 02/10/2011 17:42:05 door Jacco Brandt
Nog steeds 404 error :( Ik snap er echt niks meer van...
Probeer deze eens:
RewriteRule ^profiel/([^/\.]+)/?$ profiel.php?naam=$1 [L,QSA]
RewriteRule ^profiel/([^/\.]+)/?$ profiel.php?naam=$1 [L,QSA]
Code (php)
1
2
3
4
5
2
3
4
5
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(profiel)/([a-z0-9_-]+)/?$ profiel.php?naam=$2 [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(profiel)/([a-z0-9_-]+)/?$ profiel.php?naam=$2 [L]
Dit werkt bij mij. Het eerste deel is 'profiel' en in het tweede gedeelte mogen tekens van 'a' tot 'z' voorkomen, nul tot en met 9, een '_' en een '-'. Je kan dat eventueel uitbreiden (bijv. als je A-Z toevoegt dan kan je ook hoofdletters gebruiken).
Kijk eens in de Apache error log als je meer informatie wilt hebben waar het precies verkeerd gaat. Je kan ook wat combinaties uitproberen. Geef bijvoorbeeld i.p.v. enkel 'profiel.php' het volledige pad op (bijv. http://localhost/profiel.php?naam=$2). Probeer het met slashes ervoor en zonder. Kijk in de Apache configuratie of de mod_rewrite module überhaupt aanstaat.
Euh lol, ik doe het altijd zo:
Als goed is staat mod_rewrite aan, als ik phpinfo() doe staat hij erbij.
Maar ik krijg nog steeds 404 error.
Quote:
Loaded Modules core mod_win32 mpm_winnt http_core mod_so mod_actions mod_alias mod_asis mod_auth_basic mod_auth_digest mod_authn_default mod_authn_file mod_authz_default mod_authz_groupfile mod_authz_host mod_authz_user mod_autoindex mod_cgi mod_dav_lock mod_dir mod_env mod_headers mod_include mod_info mod_isapi mod_log_config mod_mime mod_negotiation mod_proxy mod_proxy_ajp mod_rewrite mod_setenvif mod_ssl mod_status mod_php5 mod_perl mod_dosevasive22
Maar ik krijg nog steeds 404 error.



