HTacces rewrite

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Cloud Developer

Cloud Developers opgelet! Bij Luminis zijn ze opzoek naar jou. Lees de vacature en solliciteer direct. Luminis is een software- en technologiebedrijf met meerdere vestigingen. Vanuit deze vestigingen werken 200 professionals aan technisch hoogwaardige oplossingen voor klanten zoals KLM, Nike en Bol.com. Ook ontwikkelt Luminis eigen oplossingen op het gebied van cloud, Internet of Things, data intelligence, e-sports en e-learning. Luminis onderscheidt zich door aantoonbaar voorop te lopen in technologie en innovatie. Luminis heeft drie kernpunten die verankerd zitten in alles wat we doen: het omarmen van nieuwe technologie, meesterschap en kennis delen. Functiebeschrijving First things first! Het is belangrijk

Bekijk vacature »

IT Manager team PaaS

TenneT is hard groeiende om haar ambities waar te kunnen maken. Zo nemen wij een leidende rol in het aanjagen van de energietransitie. Het werven van nieuw talent speelt daarin een cruciale rol. Wij zijn op zoek naar een gedreven Lead PaaS die hieraan wil bijdragen en misschien ben jij dat wel? Jouw bijdrage aan TenneT Je wordt de Teammanager (Lead) van een nieuw team binnen de afdeling Basic van Information Technology and Facilities (ITF) van TenneT. Het team heet Platform as a Service. Hier wordt elke dag in een goede sfeer met zijn allen hard gewerkt om vanuit IT

Bekijk vacature »

Junior Front end developer

Functie Jij als developer gaat ons helpen onze producten verder te ontwikkelen en in te zetten in de markt. Op dit moment bestaat ons SaaS product uit 3 componenten die zowel los als in een pakket gekocht kunnen worden. Het gaat hier om een online kaartapplicatie, een workflow tool en een monitoring tool. Momenteel zijn wij 3 jaar geleden gestart met de ontwikkeling. De tech-stack waarmee we werken is voornamelijk Javascript, Vue.js en Python. Daarnaast gebruiken wij FaundaDB als database en werken we veel met GIS applicaties. De uitdaging die we momenteel hebben is dat we momenteel een intern team

Bekijk vacature »

C# Developer

Dit ga je doen Je gaat aan de slag in het websites team of portals team waarin je je bezighoudt met concept & design, implementatie en ook een stukje bugfixing en onderhoud; Je werkt met je team volgens de Scrum werkwijze; Zo adviseer je ook de PO & Scrum Master over de technische architectuur, koppelingen en integratie met externe systemen en API’s; Je blijft op de hoogte van de laatste ontwikkelingen en trends op het gebied van C# / .NET en deelt deze kennis binnen de organisatie. Hier ga je werken Onze klant is een internationale organisatie gevestigd in de

Bekijk vacature »

Senior SQR Java Developer

Vacature details Vakgebied: Software/IT Opleiding: Senior Werklocatie: Eindhoven Vacature ID: 13333 Introductie Are you passionate about contributing to the world's most advanced machines. Do you thrive in a challenging environment working with highly motivated and skilled teams? If so, we have the perfect opportunity for you! We are seeking a Senior Software Design Engineer for Sequence Tooling to play a critical role in creating and maintaining mission-critical software applications. In this role, you will focus on achieving maintainable software architecture that is transparent and easy to extend while maintaining a strong focus on software quality. You will work closely with

Bekijk vacature »

C#.NET ontwikkelaar

Functieomschrijving Voor een gewaardeerde werkgever in regio Tilburg zijn wij op zoek naar een C#.NET ontwikkelaar. Je bent verantwoordelijk voor het ontwikkelen van dashboards, webapplicaties en apps voor de eigen IOT-oplossingen. Samen met een vooruitstrevend team van ontwikkelaars en engineers krijgen jullie de opdracht om de sensoren in de apparatuur te scannen en vervolgens de data om te zetten in belangrijke inzichten voor de klanten. Taken en verantwoordelijkheden: Heb jij ideeën over nieuwe technieken die jullie kunnen implementeren? Hier wordt echt naar je geluisterd en gekeken of jouw idee daadwerkelijk ingezet kan worden; Je gaat aan de slag met de

Bekijk vacature »

Oracle APEX developer

Wat je gaat doen: Als Oracle APEX ontwikkelaar bij DPA werk je samen met collega’s aan de meest interessante opdrachten. Je zult je ervaring met SQL, PL/SQL, JavaScript, HTML en CSS inzetten om wensen van opdrachtgevers te vertalen naar technische oplossingen. Je werk is heel afwisselend, omdat DPA zich niet beperkt tot een specifieke branche. Zo ben je de ene keer bezig binnen de zorgsector, de andere keer is dit bij de overheid. Wat we vragen: Klinkt goed? Voor deze functie breng je het volgende mee: Je hebt een hbo- of universitaire opleiding afgerond Je hebt 2 tot 5 jaar

Bekijk vacature »

Sportieve Junior C#.NET developer gezocht!

Bedrijfsomschrijving Wil jij werken aan webapplicaties bij de marktleider binnen de branche? Voor een klant in de buurt van Oosterhout ben ik op zoek naar een Fullstack .NET developer. Dit bedrijf bestaat bijna 10 jaar en is inmiddels uitgegroeid tot marktleider in Nederland en heeft tevens kantoren in meerdere landen in Europa. Dit bedrijf bouwt webapplicaties waarbij internationaal enkele honderdduizenden deelnemers, soms tegelijk, een beroep doen op de realtime data uit deze applicaties. Dit brengt erg veel technische uitdaging met zich mee. Ze ontwikkelen nieuwe applicaties maar ook bestaande applicaties worden uitgebreid en verbeterd. Hier kan jij een onderdeel van

Bekijk vacature »

Fullstack developer

Functie omschrijving We are looking for a dutch native speaker Wil jij werken als Senior Developer en werken aan een applicatie die duizenden marketingcampagnes automatisch aanstuurt? Dit is je kans! Kom werken voor onze opdrachtgever en in deze rol zul je veel vrijheid en verantwoordelijkheid krijgen om gezamenlijk de applicatie naar een hoger plan te tillen. Wat ga je verder doen: Optimaliseren, beheren en uitbreiden van onze applicatie; Het bouwen van aansluitingen op de systemen van partners middels API’s; Meedenken over de technische/ontwikkel-standaarden; Proactief verbeterpunten voorstellen. Bedrijfsprofiel Het is een organisatie die met een team van verschillende developers én marketeers

Bekijk vacature »

Ervaren PHP developer gezocht!

Functie Het team bestaat inmiddels uit zo’n 25 collega’s met specialisten op het gebied van development, data(analyse), marketing, infrastructuur en finance. Ze hebben een supermodern pand en bieden hiernaast veel vrijheid en verantwoordelijkheid. Ze doen er alles aan om jou op te gemak te stellen. Zo kun je je eigen werkplek inrichten naar persoonlijke wensen, maar gaan ze bijvoorbeeld ook jaarlijks met elkaar wintersporten en zijn er andere leuke uitjes. Als onderdeel van één van de scrumteams ga je aan de slag, samen ben je medeverantwoordelijk voor het doorontwikkelen van hun business applicatie waar het traffic team dagelijks mee werkt.

Bekijk vacature »

Cloud Engineer

Ben jij een ervaren Cloud Engineer die complexe omgevingen kan overzien en wil je graag in vaste dienst werken bij een professioneel en kleinschalig bedrijf waar je een belangrijke rol kan spelen? Wij, IntelliMagic in Leiden, ontwikkelen specialistische IT monitoring software die we als SaaS oplossing verkopen aan grote bedrijven in Europa en de VS. We zijn een Nederlands bedrijf met een goede sfeer en met grote waardering voor de persoonlijke inbreng en kwaliteiten van onze medewerkers. Wij zoeken een ervaren Cloud Engineer met academisch denkniveau die verantwoordelijk wordt voor het beheer van de cloud infrastructuur voor onze Europese klanten.

Bekijk vacature »

Consultant Low Code Developer

Functie omschrijving Heb jij verstand van datamodellering, NO CODE Platformen en kun jij het aan om projecten te leiden? Ben jij toe aan een nieuwe uitdaging en ben jij HBO afgestudeerd in de richting van IT? Voor een mooie opdrachtgever in omgeving Delft zijn wij op zoek naar een No Code developer die zich bezig gaat houden met het optimaliseren van bedrijfsprocessen bij klanten. Onderdelen functie Je gaat geen code kloppen maar bedenken hoe applicaties eruit moet komen te zien. Je gaat werken met een non code platform, je kunt denken aan Mendix of Betty Blocks. Je bent verantwoordelijk voor

Bekijk vacature »

PHP Back-end Developer

Vacature details Vakgebied: Software/IT Opleiding: Starter Werklocatie: Nijmegen Vacature ID: 13633 Introductie OUr client develop websites, webshops, and digital environments that are used by many visitors daily. They are seeking an experienced PHP-Developer Back-end to join the team. If you're looking for a position where you can tackle challenging, innovative, and multidisciplinary ICT projects and make a difference, this vacancy might be for you! Functieomschrijving As a PHP developer, you'll develop websites and digital environments used by many visitors daily. You'll work as a back-end developer and want to continuously develop in this field. You can work independently and efficiently,

Bekijk vacature »

Ambitieuze medior developer

Wat je gaat doen: Heb jij al een paar jaar ervaring als developer maar wil jij naar the next level? In ons NextLevelDev Programma helpen wij jou om de volgende stap te zetten: een mooi programma aan trainingen op het gebied van Java, hippe frameworks, Agile/Scrum, OCP-certificering en optioneel: andere JVM-talen als Kotlin en Scala; Cloud (AWS, Azure, GCP) Soc Of beter nog, wat wil jij doen? Binnen DPA GEOS zijn we dan ook op zoek naar enthousiaste Java developers om ons development team te versterken. Als Java developer werk je in Agile/Scrum teams bij onze klanten en daarbij kun

Bekijk vacature »

.NET Developer Shared Driving

Bedrijfsomschrijving Onze klant richt zich op het toegankelijker maken van steden, een fantastisch mooi streven. Hoe ze dat doen? Met eigen ontwikkelde software, waarmee vervoersmiddelen gedeeld kunnen worden. Deze inspirerende werkgever maakt een maatschappelijke impact en dat doen ze nu al zo'n 25 jaar! Het bedrijf is gevestigd in het centrum van Rotterdam en kent ongeveer zo'n 90 medewerkers. Het personeel is lekker gewoon gebleven! Iedereen kleedt zich zoals hij of zij dat zou willen en de sfeer is er erg fijn. Een leuke werkgever om voor te werken, en bovendien zijn er voor jou als Software Developer veel mooie

Bekijk vacature »

Pagina: 1 2 volgende »

Donny Wie weet

Donny Wie weet

05/09/2013 18:05:10
Quote Anchor link
Hoi allemaal,

Ik wil de url die ik krijg aanpassen. Dit kan dmv htacces. Ik heb de volgende link die ik wil aanpassen:

www.voorbeeld.nl/topics.php?id=10&titel=over%20htacces%20leren

Nu wil ik die veranderen in iets als:

www.voorbeeld.nl/topics.php/id/10/titel/over-htacces-leren

ik heb deze code:

# Displaying PHP errors
php_flag display_errors on
php_value error_reporting 6143
RewriteEngine On
RewriteBase /

ErrorDocument 404 /errorpages/404.php

RewriteRule ^id/([^\./]+)\.html /id/$1.html [L]




Dit werkt helaas niet. Wat doe ik hier verkeerd aan?
 
PHP hulp

PHP hulp

15/07/2025 17:41:53
 
Erwin H

Erwin H

05/09/2013 18:09:58
Quote Anchor link
Om te beginnen heb je een php pagina, maar probeer je een html extensie in je url te vinden.
Overigens zou ik die hele extensie gewoon weghalen uit je url. Heeft geen enkele meerwaarde en is dus eigenlijk ook url vervuiling.
 
Donny Wie weet

Donny Wie weet

05/09/2013 18:11:20
Quote Anchor link
Heb je een voorbeeld voor me?
 
Erwin H

Erwin H

05/09/2013 19:40:27
Quote Anchor link
Altijd leuk, zo'n voorbeeld in het wilde weg geven...

maar dit is hoe ik het altijd doe:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
RewriteEngine On

RewriteCond %{REQUEST_FILENAME} -f
RewriteRule ^.* - [L]
RewriteRule ^(.*)$ index.php?route=$1 [QSA]

De eerste conditie zegt dat als de request voor een bestaande file is dan moet die aangeroepen worden. Bestaat de file niet, dan gaat de tweede in werking en die schrijft in feite de hele url om naar een parameter (route) in de url. vervolgens kan ik in php die gaan ontleden en bepalen wat er moet gaan gebeuren.

Als ik dus deze url aanroep:
http://www.domein.nl/pagina/actie/bla/bla/bla

dan wordt dat:
www.domein.nl/index.php?route=pagina/actie/bla/bla/bla
 
N K

N K

05/09/2013 20:14:11
Quote Anchor link
Ik kaap deze thread even aangezien ik precies hetzelfde nodig heb.
Bovenstaande van Erwin werkt perfect bij mij behalve als ik www.domein.nl intyp.
Deze lijkt nu niet meer naar index.php te gaan maar komt nu met (vanuit mijn script)een 404 pagina.
Kan de pagina dus niet vinden. Hoe kan ik dit voorkomen?
Onder de inhoud van mijn index.php
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
<?php
 if (!isset($_GET['p'])) {
    include "pages/home.php";
    }
else {
    $page = $_GET['p'];
    if (file_exists('pages/' . $page . '.php')) {
        include('pages/' . $page . '.php');
    }
else {
        echo "404";    
    }
    }

    ?>
Gewijzigd op 05/09/2013 20:38:34 door N K
 
Donny Wie weet

Donny Wie weet

05/09/2013 21:40:49
Quote Anchor link
Zelfde als hier: ik heb ook de error dat pagina's niet gevonden kunnen worden... De GET waarde blijft nu dus leeg
 
Erwin H

Erwin H

05/09/2013 22:06:15
Quote Anchor link
Aannemende dat je op een shared host zit en dus gebruik maakt van htaccess files:
1) Waar staat je .htaccess (zou de root moeten zijn)
2) Waar staat je index.php (zou ook de root moeten zijn)
3) Check of je een RewriteBase nodig hebt. Op shared hosts is dat vaak nodig en dan krijg je waarschijnlijk dit:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
RewriteEngine On

RewriteBase /

RewriteCond %{REQUEST_FILENAME} -f
RewriteRule ^.* - [L]
RewriteRule ^(.*)$ index.php?route=$1 [QSA]
Gewijzigd op 05/09/2013 22:06:45 door Erwin H
 
N K

N K

05/09/2013 22:12:09
Quote Anchor link
Ik krijg mijn (php) 404 melding weer..
 
Erwin H

Erwin H

05/09/2013 22:13:06
Quote Anchor link
Laat dan eens zien wat je precies hebt.
 
N K

N K

05/09/2013 22:14:47
Quote Anchor link
hoi Erwin,

mijn index.php staat een paar berichten terug. Of wil je iets anders zien?
De .htaccess staat in mijn root samen met index.php
htaccess:


RewriteEngine On

RewriteBase /

RewriteCond %{REQUEST_FILENAME} -f
RewriteRule ^.* - [L]
RewriteRule ^(.*)$ index.php?p=$1 [QSA]
Gewijzigd op 05/09/2013 22:17:13 door N K
 
Donny Wie weet

Donny Wie weet

05/09/2013 22:15:57
Quote Anchor link
ik heb dit:

RewriteEngine On

RewriteCond %{REQUEST_FILENAME} -f
RewriteRule ^.* - [L]
RewriteRule ^(.*)$ events.php?event=$1 [QSA]

Als ik die rewritebase erin zet doet mn site het niet meer
 
Erwin H

Erwin H

05/09/2013 22:23:46
Quote Anchor link
@N K
ok, dan is het probleem (denk ik) duidelijk. Je moet namelijk wel goed begrijpen hoe die rewrite rule werkt. Elk request zal verwijzen naar dezelfde index file, met een get parameter. Als je dus naar www.domein.nl gaat, dan wordt dat herschreven naar www.domein.nl/index.php?p= je parameter p blijft dus leeg (er is verder geen route). In je index file vang je dat echter niet af. Je checkt op het niet bestaan van de parameter of anders op file_exists('pages/' . $page . '.php') (wat in dit geval 'pages/.php' wordt). Beide zijn niet correct en dus krijg je die 404 pagina.
Je zal dus nog de optie voor een lege parameter moeten opnemen.

@Donny
Wat gaat er bij jou dan mis? Je zegt dat er pagina's niet kunnen worden gevonden, maar dat is een beetje te weinig info voor mij om te kunnen zien wat er dan misgaat. De rewitebase heb je dus blijkbaar niet nodig.
Wat overigens nog een goede optie om je rewrite te testen, is om gewoon in je index file even de $_GET array te printen naar het scherm. Dan zie je precies welke rewrite goed gaat en welke niet. Als er dan een pagina niet gevonden kan worden, maar die GET array zie je wel, dan weet je dat het misgaat in je php stuk.
 
Donny Wie weet

Donny Wie weet

05/09/2013 22:28:36
Quote Anchor link
Oke, ik heb de print gedaan. De GET waarde bevat nu Array ( [event] => events/event/26 ). Normaal bevat het alleen het getal.
 
N K

N K

05/09/2013 22:31:25
Quote Anchor link
@Erwin

Thanks, ik dacht al zoiets maar je hebt me helemaal in de goede richting geholpen.

Heb nu dit wat werkt:
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
<?php
    // Include Pages
    if (!isset($_GET['p']) || empty($_GET['p'])) {
    include "pages/home.php";
    }

    else {
    $page = $_GET['p'];
    if (file_exists('pages/' . $page . '.php')) {
        include('pages/' . $page . '.php');
    }
else {
        echo "404";    
    }
    }

?>
 
Erwin H

Erwin H

05/09/2013 22:31:31
Quote Anchor link
@Donny
Zoals ik hierboven al zeg, je moet goed begrijpen hoe het werkt. Elk request dat er nu gedaan wordt gaat naar dezelfde index file, met het volledige pad in de opgegeven GET parameter. Je zal dus in php dat pad moeten gaan 'lezen' om te zien wat je moet doen. Het grote voordeel is dat je elke route nu dynamisch kan bouwen.
Gewijzigd op 05/09/2013 22:31:56 door Erwin H
 
N K

N K

09/09/2013 23:29:13
Quote Anchor link
Lastige materie dit..
Ik wil graag een GET parameter erbij hebben. Heb aardig wat gelezen maar kom er niet uit i.c.m. onderstaand voorbeeld.

Ik heb nu dit:

RewriteEngine On

RewriteCond %{REQUEST_FILENAME} -f
RewriteRule ^.* - [L]
RewriteRule ^reset_password/(.*)$ index.php?p=reset_password&token=$1
RewriteRule ^(.*)$ index.php?p=$1 [QSA]

Op zich werkt dit wel maar al mijn paden binnen reset_password.php kloppen nu niet meer.
Bijv. bij een css bestand in deze pagina ziet het pad er nu uit als
http://localhost/site/reset_password/css/style.css
Terwijl het moet zijn
http://localhost/site/css/style.css

Kan iemand mij de juiste richting op helpen?
Gewijzigd op 09/09/2013 23:29:52 door N K
 
Erwin H

Erwin H

09/09/2013 23:38:41
Quote Anchor link
Maar dit is zo te zien een probleem van je urls opbouwen, niet van htaccess.
 
N K

N K

10/09/2013 10:58:55
Quote Anchor link
Mmm, hoe bedoel je?
Vanuit index.php haalt mijn script de pagina op die in mijn GET['p'] staat.
Al deze pagina's bevatten relatieve paden bijv. css/style.css.

Vanuit mijn email wil ik naar site/reset_password/25f2vrggg43g34 (waarbij dat laatste de value van de token is) kunnen. Kan het zijn dat mijn script op index.php niet goed werkt in combinatie met de .htaccess?
 
Erwin H

Erwin H

10/09/2013 11:12:31
Quote Anchor link
De url die je geeft (http://localhost/site/reset_password/css/style.css) is niet herschreven door je htaccess, maar maak jij. Het gaat dus niet goed in het maken van je urls. Nogmaals, dat heeft niets met htaccess te maken.

Als het fout gaat door de relatieve paden, dan moet je of die relatieve paden loslaten, of een base pad opnemen in je html document.
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<base href="http://www.domein.nl/">

De relatieve paden worden dan gebouwd vanaf dat pad en niet vanaf de url.
 
N K

N K

10/09/2013 18:49:51
Quote Anchor link
Okee, die base href werkt in ieder geval (DANK!) maar het smaakt een beetje als een workaround.

Ik vind het irritant dat ik niet snap waarom dit verkeerd gaat..;-)

Wat is het verschil tussen deze twee links?
http://localhost/site/reset_password/7c28f11d77f2f89e
http://localhost/site/login

Beide pagina's (reset_password en login) staan in dezelfde map (pages) en hebben dezelfde paden gedefinieerd.
Bij de eerste is er alleen een GET parameter toegevoegd.(token)

Toch probeert hij (bijv. een CSS bestand) bij de eerste vanuit een reset_password map te benaderen wat fout gaat.
Bij de tweede is dit gewoon zoals het hoort vanuit de root.
In beide scripts staat <link rel="stylesheet" href="css/style.css" />

Ik ben echt benieuwd waar ik dan de mist in ga..

(P.S.
is mijn htaccess regel wel goed? :
RewriteRule ^reset_password/(.*)$ index.php?p=reset_password&token=$1
Deze heb ik zelf in elkaar geknutseld maar ik mis hier nog de nodige kennis in..)
 
Erwin H

Erwin H

10/09/2013 19:47:45
Quote Anchor link
Het heeft niets te maken met een workaround, het heeft ermee te maken dat de browser niet weet waar het pad naar toe gaat. De browser berekent relatieve paden vanuit de url. Waarbij de laatste backslash als root wordt genomen.
Met jouw voorbeelden (let ook op de eerste twee!):
relatieve pad: css/style.css
url: http://localhost/site/login -> http://localhost/site/css/style.css
url: http://localhost/site/login/ -> http://localhost/site/login/css/style.css
url: http://localhost/site/reset_password/7c28f11d77f2f89e -> http://localhost/site/reset_password/css/style.css

Voor de browser klopt dit, maar door het rewriten van je urls klopt het voor jouw server niet meer. Daar is de root altijd http://localhost/site/
Vandaar dat je de browser even moet helpen om de root correct te krijgen en dat doe je met die <base>.
N K op 10/09/2013 18:49:51:
Beide pagina's (reset_password en login) staan in dezelfde map (pages) en hebben dezelfde paden gedefinieerd.
Bij de eerste is er alleen een GET parameter toegevoegd.(token)

Dat is niet waar. Je het er geen GET parameter aan toegevoegd, je hebt er een map aan toegevoegd. En dat is nu net het probleem. Een GET parameter komt na het vraagteken en daar zou de browser ook niet over vallen. Die extra 'map' wordt pas na het rewritten weer een GET parameter, maar dat weet de browser dus niet.



Toevoeging op 10/09/2013 19:49:36:

N K op 10/09/2013 18:49:51:
(P.S.
is mijn htaccess regel wel goed? :
RewriteRule ^reset_password/(.*)$ index.php?p=reset_password&token=$1
Deze heb ik zelf in elkaar geknutseld maar ik mis hier nog de nodige kennis in..)

Als het werkt, werkt het, maar ik zou het niet doen. Ik zou gewoon bij de algemene blijven die ik boven heb gegeven en in je php script die route gaan interpreteren. Hoe meer uitzonderingen je al in de htaccess maakt, hoe inflexibeler (en lastiger te onderhouden) het wordt.
 

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.