.htaccess en mod_rewrite

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Pagina: 1 2 volgende »

Michael Braam

Michael Braam

17/05/2010 12:49:07
Quote Anchor link
Hallo,

Waarschijnlijk komt deze vraag al heel vaak voor, alleen ik kan hem niet vinden.
Wat ik wil is volgens mij heel simpel ik heb deze hoofdpagina`s:

- index.php
- activities.php
- organisation.php
- special.php
- social.php

Nu moeten deze links zo worden:
- index
- activities
- organisation
- special
- social

Nu heb ik dit gedaan in de .htaccess om te proberen:
RewriteEngine On

RewriteRule ^activities $ activities.php

--------------
Maar ik krijg een mooie melding:
Server fout!

De server kreeg een interne fout en kon uw vraag niet beantwoorden. De server is overbelast of er was een fout in een CGI script.

Indien u van oordeel bent dat deze server in fout is, gelieve de webmaster te contacteren.
ERROR 500
---------------

Ik zal vast iets verkeerd doen maar ik snap hem gewoon niet hoe dit zit.
Wie o wie kan mij helpen??

Alvast enorm bedankt!
 
PHP hulp

PHP hulp

22/12/2024 23:18:53
 
Chris -

Chris -

17/05/2010 13:05:06
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
RewriteEngine On

RewriteRule ^activities$ activities.php [L]


Je had een spatie tussen de s en de $ ;-)
 
Michael Braam

Michael Braam

17/05/2010 13:09:07
Quote Anchor link
Tjonge jonge :P
Heel erg bedankt, ik kon het niet vinden maar ik heb hem.

Echt bedankt, later deze maand zal ik met een vervolg vraag komen maar nu ben ik nog niet zo ver.
 
Chris -

Chris -

17/05/2010 13:13:08
Quote Anchor link
Geen probleem =)
 
Michael Braam

Michael Braam

17/05/2010 13:31:57
Quote Anchor link
Toch nog even alvast een kleine bijkomende vraag.
Stel je tikt nu een woord in die niet bestaat, bijv. hallo inplaats van index.
Nu wil ik dat dat wordt doorgestuurd aan bijv. nietgevonden.php moet ik dit dan toevoegen:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f

RewriteRule ^/(.*) nietgevonden.php
Gewijzigd op 18/05/2010 10:24:43 door Michael Braam
 
Joren de Wit

Joren de Wit

17/05/2010 13:41:22
Quote Anchor link
Nee, die RewriteCond's controleren of de aangeroepen url een bestaande map of bestand is en hebben hier dus niets mee te maken.

Je kunt simpelweg die RewriteRule als laatste rule toevoegen, waarbij je er wel voor zorgt dat je alle voorgaande rules de [L] flag meegeeft. Op die manier wordt je doorgestuurd naar nietgevonden.php als er niet aan een van de andere rules voldaan wordt.
Gewijzigd op 17/05/2010 13:42:01 door Joren de Wit
 
Chris -

Chris -

17/05/2010 13:47:19
Quote Anchor link
Je laatste RewriteRule uit je post hierboven veranderen naar
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
ErrorDocument nietgevonden.php
 
Michael Braam

Michael Braam

17/05/2010 14:19:01
Quote Anchor link
Oke wordt het dan zo:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
RewriteEngine On

RewriteRule ^index$ index.php
RewriteRule ^activities$ activities.php
RewriteRule ^special$ special.php
RewriteRule ^organisation$ organisation.php
RewriteRule ^social$ social.php

ErrorDocument nietgevonden.php


Want dit werkt niet :(
Gewijzigd op 18/05/2010 10:25:06 door Michael Braam
 
Chris -

Chris -

17/05/2010 14:29:21
Quote Anchor link
En wát werkt er dan niet? ;-)
 
Michael Braam

Michael Braam

17/05/2010 14:31:12
Quote Anchor link
Ow ja is handig deze melding krijg ik:
----------------------
Object niet gevonden!

De gevraagde URL was niet gevonden op deze server. Indien u de URL manueel hebt ingevuld, gelieve uw spelling te controleren en probeer opnieuw.

Indien u van oordeel bent dat deze server in fout is, gelieve de webmaster te contacteren.
Error 404
----------------------
 
Niels K

Niels K

17/05/2010 14:53:15
Quote Anchor link
is het niet ErrorDocument 404?
 
Chris -

Chris -

17/05/2010 14:54:38
Quote Anchor link
Inderdaad Niels, moet dus zijn ErrorDocument 404 nietgevonden.php
 
Michael Braam

Michael Braam

17/05/2010 15:00:55
Quote Anchor link
Het klopt alleen hij leest dan letterlijk dit uit:
nietgevonden.php

Dit heb ik nu:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
RewriteEngine On

RewriteRule ^index$ index.php
RewriteRule ^activities$ activities.php
RewriteRule ^special$ special.php
RewriteRule ^organisation$ organisation.php
RewriteRule ^social$ social.php

# Other Pages
RewriteRule ^news$ news.php
RewriteRule ^photogallery$ photogallery.php
RewriteRule ^videogallery$ videogallery.php

ErrorDocument 404 nietgevonden.php
Gewijzigd op 18/05/2010 10:24:18 door Michael Braam
 
Chris -

Chris -

17/05/2010 15:13:11
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
RewriteEngine On

RewriteRule ^index$ index.php
RewriteRule ^activities$ activities.php
RewriteRule ^special$ special.php
RewriteRule ^organisation$ organisation.php
RewriteRule ^social$ social.php

# Other Pages
RewriteRule ^news$ news.php
RewriteRule ^photogallery$ photogallery.php
RewriteRule ^videogallery$ videogallery.php

ErrorDocument 404 /nietgevonden.php
 
Michael Braam

Michael Braam

17/05/2010 15:14:53
Quote Anchor link
Beste Chris,

Ik krijg dan deze melding:
Not Found

The requested URL /--/--/--/--/--/900/hallo was not found on this server.

Additionally, a 404 Not Found error was encountered while trying to use an ErrorDocument to handle the request.
 
Chris -

Chris -

17/05/2010 15:36:30
Quote Anchor link
Dan nog een RewriteBase toevoegen ;-)
 
Michael Braam

Michael Braam

17/05/2010 15:45:42
Quote Anchor link
RewriteBase is toch alleen maar een link waar het zou moeten staan?
Dit heb ik toegevoegd maar dit helpt niet.

Wat er wordt aangegeven is dat als ik een naam invul achter de link dat deze niet bestaat, hij zoekt naar het bestand en als deze er niet is krijg je die melding, maar hij zou moeten "forwarden" naar nietgevonden.php. Of begrijp ik hem verkeerd?

---
Ik ben pas sinds vandaag actief met de .htaccess bezig vandaar mijn simpele vragen en bij elk antwoord moet ik even kijken waarom enz :P
 
Chris -

Chris -

17/05/2010 15:49:54
Quote Anchor link
Nee, hij forward niet naar nietgevonden.php maar hij include hem.

Overigens, jij hebt in je URL nu staan /900/hallo, maar in je .htaccess zie ik dat nergens terugkomen. Voor iedere URL (/900/hallo bijvoorbeeld dus) moet je een Rule aanmaken.

Bijvoorbeeld:

RewriteRule ^([0-9])/([a-z])$ news.php?id=$1
 
Tom geheim

Tom geheim

17/05/2010 15:53:01
Quote Anchor link
sorry ik snap dat niet :D
 
Chris -

Chris -

17/05/2010 16:15:01
Quote Anchor link
Je zegt dat als je naar de url *domein*.tld/900/hallo gaat, je een 404 error krijgt. Dat komt, omdat je nergens heb aangegeven wat die URL doet ;-)
 
Michael Braam

Michael Braam

18/05/2010 10:23:32
Quote Anchor link
Beste Chris,

Ik heb een aantal links erin staan die werken en kloppen.
Maar wat ik bijv. wil is dat als er een grappenmaker komt en die typt het volgende:

http://www.domeinnaam.nl/hallo, dat ze niet die lelijke melding krijgen van deze pagina kan niet worden gevonden maar juist gewoon de layout van de website met daarin een melding deze pagina kan niet worden gevonden. Het woordje hallo kan dus ook zijn "handigeharry" of ....
 

Pagina: 1 2 volgende »



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.