login  Naam:   Wachtwoord: 
Registreer je!
 Forum

404 error (Opgelost)

Offline GroundZero - 25/07/2015 16:57 (laatste wijziging 25/07/2015 20:19)
Avatar van GroundZeroLid Beste,

ik wil een website maken op een Belgische host (easyhost.be). Ik gebruik een bestaand iets wat (op meerdere hosts) goed werkt alleen op deze Belgische host werkt het dus niet.

http://krisjochems.be/

Dit werkt prima als root pagina, maar als ik naar http://krisjochems.be/help/ ga dan krijg ik een 404 terug.

Ik heb het zelfde htaccess bestand gebruikt wat ik ook bij andere hosts gebruikt en nog nooit problemen gehad.

Heeft iemand enig idee waardoor dit kan komen? ook wanneer ik een blanko PHP document maak (clean begonnen dus) dan gebeurd dit nog.

Het is net alsof de host geen clean-url ondersteund maar dit doen ze natuurlijk wel 

In mijn .htaccess bestand staat slechts het volgende:

  1. RewriteEngine on
  2. RewriteBase /
  3.  
  4. RewriteRule ^(.*)/$ index.php?page=$1 [L]


In de phpinfo() kan ik geen "mod_rewrite" vinden overigens, maar misschien dat het anders aangeduid staat.

5 antwoorden

Gesponsorde links
Offline Thomas - 25/07/2015 21:26
Avatar van Thomas Moderator Als mod_rewrite niet tussen de geladen modules staat dan is deze waarschijnlijk niet actief, wat ook zou verklaren waarom e.e.a. niet werkt.

Wat voor (shared) hosting pakket heb je daar? Anders informeer eens bij je host.

Daarnaast, iets wat ik nooit begrepen heb: waarom paas je alles door aan de URL-variabele $_GET['page']? Hiermee reserveer je effectief $_GET['page'] en dat is helemaal niet nodig.

Je zou alles gewoon door kunnen geven aan index.php en vervolgens $_SERVER['REQUEST_URI'] kunnen ontleden met behulp van parse_url(). Als je wilt heb ik wel een voorbeeld.

Maar eens maar eens bepalen of mod_rewrite uberhaupt aan staat .

Clean URLs zou je eventueel wel aan de praat kunnen krijgen zonder mod_rewrite, maar dat is een klein beetje lastiger.
Bedankt door: GroundZero
Offline GroundZero - 26/07/2015 09:53
Avatar van GroundZero Lid Heya, thanks voor je antwoord! ik vermoede al dat het uit stond inderdaad. Heb hun een email gestuurd met het verzoek om deze te activeren 

Als je een voorbeeld hebt graag, wil natuurlijk altijd graag verbeteren. Echter heb ik geleerd om schone URLs te houden en dus geen index.php?pagina=over-ons&sectie=adres-gegevens te gebruiken bijvoorbeeld maar daarvoor in de plaats dus mijnsite.nl/over-ons/adres-gegevens/.

De manier waarop ik het geleerd heb is dus via .htaccess en dan op deze methode 

Nogmaals dank!
Offline Thomas - 26/07/2015 11:58
Avatar van Thomas Moderator Een voordeel van bovengenoemde methode is dat je maar één RewriteRule nodig hebt die alles (behalve losse script- of directory-aanroepen) doorstuurt naar index.php.

Daar kun je een verzoek verder afhandelen in code, mogelijk in combinatie met een database. Je verplaatst daarmee dus effectief de controle over je RewriteRules van .htaccess naar PHP code.

het idee

voorbeeld van gebruik
Lees hier ook de vervolgreacties en kijk (ook vooral) naar het stukje over interne links, wat best wel belangrijk/handig kan zijn voor het consistent houden van links binnen je site als je clean URLs gebruikt.
Bedankt door: GroundZero
Offline GroundZero - 26/07/2015 13:16
Avatar van GroundZero Lid Ah kijk dat is misschien inderdaad wel een nog veel betere manier als wat ik nu al jaren lang gebruik. Dankjewel!! ik ga dit zeker eens uitprinten en leren. Erg interessant! 
Offline radem205 - 31/07/2015 15:00
Avatar van radem205 Nieuw lid Terugkomend op je probleem met de rewriterule. Mocht de rewrite engine wel geactiveerd zijn, kan je proberen om onderstaande bovenin je htaccess-bestand te plaatsen.

Options -MultiViews
Gesponsorde links
Je moet ingelogd zijn om een reactie te kunnen posten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.185s