.htaccess rewrite url

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Senior Front-end Developer

Dit ga je doen Met behulp van diverse programmeertalen ontwikkelen van Front-end software; Het begeleiden van het front-end team; Het oplossen van incidenten; Het bijhouden van een backlog; Je hebt een actieve bijdrage in de wekelijkse overleggen met de omliggende teams; Je houdt trends bij en adviseert het management hierover waar nodig; Helder communiceren met de stakeholders om hen zo mee te nemen in projecten en laten inzien wat de duur en toegevoegde waarde van bepaalde projecten is. Hier ga je werken Deze organisatie heeft circa 40 miljoen bezoekers per maand en heeft innovatie hoog in het vaandel staan. Het

Bekijk vacature »

Laravel developer

Zie jij mogelijkheden om onze tooling technisch te verbeteren en uit te bouwen? Over Jobmatix Jobmatix is een innovatieve en internationale speler op het gebied van jobmarketing. Onze jobmarketing automation tool helpt organisaties bij het aantrekken van nieuw talent door vacatures digitaal, geautomatiseerd en op een efficiënte manier te adverteren en onder de aandacht te brengen bij de doelgroep op 25+ jobboards. Volledig performance-based, waarbij organisaties betalen op basis van cost per click of cost per applicant. Maandelijks wordt onze jobmarketing automation tool al gebruikt door vele directe werkgevers, intermediairs en mediabureaus, waaronder Picnic, Rijkswaterstaat, AdverOnline, Schiphol, DPA, Teleperformance en

Bekijk vacature »

Developer Full Stack

Functie omschrijving Full Stack Developer gezocht! Wij zijn op zoek naar een Full Stack Developer voor een bedrijf in de regio Nijkerk. Je maakt in deze functie onderdeel uit van een groeiend team met een goede ambitie waarbij eenheid, betrokken en overtreffen de belangrijkste kernwaardes zijn. Het bedrijf werkt volgens de AGILE/SCRUM methode, wat je o.a. terug vindt in de tweewekelijkse sprints, retrospectives en een daily standup. Je takenpakket bestaat uit: Bijdragen aan het door ontwikkelen, onderhouden en optimaliseren van een Saas applicatie; Bijdragen aan de innovatie van het bedrijf en hun klanten; Het ontwikkelen op de laatste technologie van

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 »

Software Developer

Dit ga je doen Ontwikkelen aan de software dat beschikbaar is op de substations; Ontwikkelen in C++, C, Python en JavaScript. Daarnaast op een Embedded Linux omgeving, opgebouwd met containers en DevOps; Meewerken aan cyber security (OWASP); Uitvoeren/bouwen van geautomatiseerde testen in samenwerking met de Quality Specialist; Vertalen van wensen van de klanten/business naar werkbare/duurzame oplossingen. Hier ga je werken Als Software Ontwikkelaar kom je te werken bij een organisatie gericht op de (internationale) energiemarkt, waar wordt gewerkt voor het verwerven en verwerken van realtime, high quality data. Er wordt gewerkt vanuit het hart van de substations en direct voor

Bekijk vacature »

Junior .NET Developer

Dit ga je doen Als junior .NET Developer lever je met jouw oplossingen direct een bijdrage aan de bedrijfsprocessen van de klanten. Werkzaamheden waar jij je zoal mee bezig houdt zijn; Het ontwikkelen, onderhouden en optimaliseren van de draaiende platforms van de klanten; Softwareontwikkeling middels C#, .NET; Klantcontact om de wensen te bespreken en uit te werken; Optimaliseren van de (huidige) bedrijfsprocessen; De IT-afdeling bestaat uit 30 personen verdeeld over 3 teams. Het team waar je in terecht komt bestaat uit ongeveer tien man. Het is een team wat bestaat uit betrokken collega’s, waar iedereen bereidt is om elkaar te

Bekijk vacature »

Senior C# Software Ontwikkelaar te Zaandam

Bedrijfsomschrijving Deze werkgever heeft als missie om haar klanten op ICT-gebied volledig te ontzorgen. Ze zijn een ICT bedrijf met een verscheidenheid aan ICT oplossingen waaronder Cloud oplossingen en een groot deel van het werk is gericht op software realisatie. Voor de Enterprise-klanten voert het relatief kleine ontwikkelteam waar jij deel uit van kan gaan maken binnen deze organisatie te Zaandam de grootste opdrachten uit. Niet alleen websites en complexe webapplicaties maar ook mobile apps, web services en complete systeemintegraties! Je moet dan denken aan Dynamics, Sharepoint en Salesforce. Je komt hier terecht in een relatief kleine organisatie met ontzettend

Bekijk vacature »

.NET Developer Medior Senior

Dit ga je doen Ontwikkelprocessen verder optimaliseren en verder ontwikkelen met C#; CI/CD-pipelines automatiseren; Herbruikbare componenten maken; Testen; Front-end pagina's gebruiksvriendelijk maken. Hier ga je werken Als .NET Developer kom jij terecht binnen een grote en internationale organisatie. Zij streven naar een positieve impact op de mens, milieu en maatschappij. Het bedrijf is oorspronkelijk een familiebedrijf en werkt aan de productie van hoogwaardige en technische systemen voor de gezondheidszorg. Momenteel willen zij betere ontwikkelprocessen creëren op internationaal gebied en staat kwaliteit en veiligheid voor hun op nummer 1! Als .NET Developer werk jij aan het ontwikkelen van verbeterde software voor

Bekijk vacature »

Medior PHP developer

Functie Samen met je development team werk je Agile Scrum en met jullie gezamenlijke kennis en ervaring bepalen jullie samen de beste keuze voor techniek en architectuur. Naast het ontwikkelen van software ben je continue bezig om ook jezelf te ontwikkelen. Ze werken met o.a.: PHP, Laravel, Doctrine, PHP Unit, Behat, React, TypeScript, (My)SQL, Postgress, Redis, ElasticSearch, Docker, Nginx, GIT flow, JIRA, AWS. Eisen • HBO werk- en denkniveau • Je hebt goede kennis en ervaring met PHP • Je bent niet bang voor complexe projecten • Je werkt graag zelfstandig aan applicaties • Je bent altijd nieuwsgierig naar nieuwe

Bekijk vacature »

Back-end programmeur

Functieomschrijving Heb jij recent jouw HBO ICT diploma in ontvangst mogen nemen? Of ben je toe aan een nieuwe uitdaging? Voor een erkende werkgever in regio Waalwijk zijn wij op zoek naar een back-end developer. Kennis of ervaring met C# & SQL is een must! Je houdt je bezig met het ontwikkelen van nieuwe functionaliteiten; Je bent verantwoordelijk voor de beheer en ontwikkeling van de software; Je draagt bij aan de implementatie van aanpassingen, verbeteringen en aanvullingen in de C# based applicaties; Je test de software en ontwikkelt deze door; Je brengt de aanpassingssuggesties van klanten in kaart, om ze

Bekijk vacature »

Scrum Master

TenneT is hard groeiend om de onze 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 Scrum master op onze locatie Arnhem die hieraan wil bijdragen en misschien ben jij dat wel? Jouw bijdrage aan TenneT Je begeleidt twee teams binnen de afdeling Platform Services (PLS). Je helpt mee de devops manier van werken van de teams verder door te ontwikkelen. Je helpt de PO bij het managen van de product backlog; het voorbereiden van

Bekijk vacature »

Back-end PHP Software Developer - Juniorfunctie

Functieomschrijving Wij zijn op zoek naar een PHP Software Developer om ons team te versterken en mee te werken aan de ontwikkeling van eigen IOT-oplossingen. In deze functie ben je verantwoordelijk voor het bouwen van webapplicaties, apps en dashboards voor het uitlezen en managen van sensoren in machines. Je werkt nauw samen met een team van ontwikkelaars en engineers om de beste software-oplossingen te creëren. Jouw werkzaamheden zien er als volgt uit: Je bent in deze rol verantwoordelijk voor het ontwerpen, ontwikkelen en onderhouden van webapplicaties en softwaretoepassingen voor in-house ontwikkelde IOT oplossingen. Je werkt aan complexe databases en back-end

Bekijk vacature »

Medior/senior front end developer

Functie Vanwege de groei binnen het bedrijf zijn we op zoek naar versterking in het development team. Als back-end developer bouw je aan de bedrijfssoftware die ons helpt bij de primaire processen. Een leuk (intern) project dus waarbij je de software continu doorontwikkeld! Je werkt in een klein team, we hebben dagelijks stand-ups en iedere twee weken een scrum-sessie, begeleid door onze Scrum Master. Hierin krijg je uitgebreid de kans om je ideeën te presenteren, en te overleggen met je mede-ontwikkelaars en de Product Owner. Binnen de ontwikkelteams gebruiken we Trello, Gitlab, Jiira, Confluence en Boockstack. Hiernaast werken ze met

Bekijk vacature »

Back-end programmeur

Functieomschrijving Heb jij kort geleden jouw HBO ICT diploma in ontvangst mogen nemen? Of ben je toe aan een nieuwe uitdaging? Voor een uitdagende werkgever in omgeving Waalwijk zijn wij op zoek naar een enthousiaste softwareontwikkelaar met kennis of ervaring met C# en SQL. In een uitdagende rol als C#.NET Developer werk je samen met een enthousiast en informeel team aan het bouwen van maatwerk software voor variërende klanten. Verder ziet jouw takenpakket er als volgt uit: Je draagt bij aan de implementatie van aanpassingen, verbeteringen en aanvullingen in de C# based applicaties; Je houdt je bezig met het ontwikkelen

Bekijk vacature »

Integratie Developer / Architect

Dit ga je doen Als Integratie Developer / Architect binnen deze organisatie krijg je echt de kans om impact te maken. De organisatie is groeiende maar houdt een corporate cultuur buiten de deur. Heb je een goede business case: zorg voor goede argumentatie en ga ervoor! Geen stroperig beslissingsproces dat jouw ideeën in de weg staat! Enkele van jouw taken: Je ontwerpt en ontwikkelt nieuwe integraties met behulp van interne tools (Boomi) of externe partners; Je vertaalt functionele specificaties naar technische oplossingen; Je denkt mee over strategische ontwikkelingen op het gebied van applicatie integratie; Je voert regie op leveranciers en

Bekijk vacature »
Yea Rupie

Yea Rupie

09/06/2010 19:18:28
Quote Anchor link
Heej,

Ik zou graag mijn URL's rewriten, maar het werkt niet helemaal!
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
RewriteEngine On
RewriteRule ^(.+) index.php?p=$1 [L]


voorbeeld URL: http://www.xxx.nl/faq
resultaat: Array ( [p] => index.php )
verwacht resultaat: Array ( [p] => faq )
 
PHP hulp

PHP hulp

26/04/2024 08:36:06
 
Piet Verhagen

Piet Verhagen

09/06/2010 19:44:36
Quote Anchor link
RewriteRule regels worden steeds opnieuw uitgevoerd totdat er niets meer match. Dus eerste loop:
faq -> index.php?p=faq
Tweede loop:
index.php -> index.php?p=index.php
Derde loop is zelfde, dat snaptie, en dan stoptie. Je zult dus het dus zodanig moeten maken dat de tweede loop niet matcht. Dit kan je bijv. doen met een RewriteCond regel.
 
Yea Rupie

Yea Rupie

09/06/2010 19:57:25
Quote Anchor link
Thx !

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
#########################################
# REWRITE RULES                         #
#########################################
RewriteEngine On
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteRule ^(.+) index.php?p=$1 [L]
RewriteBase /
# END #
 
Yea Rupie

Yea Rupie

10/06/2010 19:19:54
Quote Anchor link
* Nieuwe vraag, zelfde script/topic

Nu wil ik een 2e en 3e GET variabel toevoegen, hoe gaat dit?
Gewijzigd op 10/06/2010 19:23:18 door Yea Rupie
 
Pim -

Pim -

10/06/2010 19:23:04
Quote Anchor link
Wat moet hier nog aan gebeuren dan?
Het is veel beter als je gewoon de hele query in die ene parameter doet en er dan met PHP mee aan de slag gaat: dat is veel flexibeler.
 
Yea Rupie

Yea Rupie

10/06/2010 19:28:41
Quote Anchor link
voorbeeld URL: http://www.xxx.nl/faq/6/7
verwacht resultaat: Array (
[p] => faq,
[m] => 6,
[y] => 7,
)
 
Pim -

Pim -

10/06/2010 19:33:35
Quote Anchor link
Precies gewoon in PHP doen.
Je kan dit op allemaal manieren oplossen.
Kijk ook eens naar Zend_Controller_Route, in mijn ogen dicht bij de ideale oplossing.

Als je maar 1 route hebt kan het natuurlijk heel makkelijk:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
<?php
$array
= array();
list($array['p'], $array['m'], $array['y']) = explode('/', trim($_GET['p'], '/'));
?>

Maar als je meerdere mogelijkheden wilt toestaan wordt het ingewikkelder.
Je moet het 'strategy' patroon toepassen.
Dan maak je een router die de routes regelt. Bij een request gaat de router alle routes af en als er 1 'past' wordt die geselecteerd en uitgevoerd.

Edit:
Voorbeeld, in OO
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
15
16
17
18
19
20
21
22
23
24
25
26
27
28
<?php
class Router
{
    protected $_routes = array();
    public function addRoute(Route $route)
    {

        $this->_routes[] = $route;
    }

    public function dispatch($query)
    {

        $query = trim($query, '/');
        // Zoek in omgekeerde volgorde
        for($i = count($this->_routes)-1; $i<=0; $i--) {
            if($this->_routes[$i]->fits($query)) return $this->_routes[$i]->getParams();
        }

        throw new Exception('No route found for '.$query);
    }
}


interface Route
{
    protected $_query, $_params;

    // Controleert of de query past in de route en zo ja, vult de gevonden parameters in in $_params
    public function fits($query);
    public function getParams();
}

?>
Gewijzigd op 11/06/2010 20:38:22 door Pim -
 
Piet Verhagen

Piet Verhagen

10/06/2010 20:40:54
Quote Anchor link
Ja kan in principe alles doen wat je wil. Meerdere vars gaat bijv. zo:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
RewriteRule ^([^/]+)/([^/]+)/([^/]+) index.php?p=$1&m=$2&o=$3 [L]

Hierbij heb ik de punt(die alles matcht) vervangen door "[^/]"(alles behalve /).
 
Yea Rupie

Yea Rupie

10/06/2010 21:09:38
Quote Anchor link
Piet Verhagen op 10/06/2010 20:40:54:
Ja kan in principe alles doen wat je wil. Meerdere vars gaat bijv. zo:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
RewriteRule ^([^/]+)/([^/]+)/([^/]+) index.php?p=$1&m=$2&o=$3 [L]

Hierbij heb ik de punt(die alles matcht) vervangen door "[^/]"(alles behalve /).

Hierbij kom ik in de knoop met mijn css en afbeeldingen.
 
Jelmer -

Jelmer -

10/06/2010 22:22:06
Quote Anchor link
Bedoel je dat die ook gerewrite worden? Nee toch? Want daar zorgen je twee RewriteCond regels al voor.

Of bedoel je dat je relatieve paden gebruikt? Dan heb je volgens mij twee gemakkelijke oplossingen: absolute paden gebruiken (beginnend met een /) maar dat is onhandig als je lokaal in een map en op de server in de root je site draait. Andere optie is <base href="/mijn/site/"> in de head van je HTML zetten, dan wordt dat pad altijd als basis voor je relatieve regels gebruikt.
 
Yea Rupie

Yea Rupie

10/06/2010 22:33:52
Quote Anchor link
Ik heb het gewoon allemaal in 1 map en de images appart:
<link href="default.css" rel="stylesheet" type="text/css" media="all" />
 
Jelmer -

Jelmer -

10/06/2010 22:35:47
Quote Anchor link
<base href="/absolute/url/naar/site"> of, waarschijnlijk aan je rewrite regels te zien dus simpelweb <base href="/"> aan HEAD toevoegen zou dat al moeten oplossen.
 
Piet Verhagen

Piet Verhagen

10/06/2010 23:12:02
Quote Anchor link
Jah maar ... je moet het zelf een beetje specificeren.
Yea Rupie op 10/06/2010 19:28:41:

Op een plek waar je een cijfer verwacht, zoals die 6 en die 7 kun je "[0-9]+" doen of bijv. nog exacter "[0-9]{1,3}"(minimaal 1 cijfer, max 3). En zodoende moet je het geheel zodanig in elkaar steken dat er geen conflicten optreden.
 
Yea Rupie

Yea Rupie

11/06/2010 17:07:17
Quote Anchor link
mmm.. Ik heb nu deze code:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
RewriteRule ^([^/]+)/([0-9/]{1,2})/([0-9/]{1,4}) index.php?p=$1&m=$2&y=$3 [L]

Hij gaat nog niet helemaal goed,
$2 = Maand
$3 = Jaartal
 
Jelmer -

Jelmer -

11/06/2010 17:41:20
Quote Anchor link
Wat gaat er dan mis? En waarom heb je / ook in je mogelijke karakters staan?
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
^([^/]+)/(\d{1,2})/(\d{1,4})/?
 
Yea Rupie

Yea Rupie

11/06/2010 17:54:58
Quote Anchor link
Jelmer rrrr op 11/06/2010 17:41:20:
Wat gaat er dan mis? En waarom heb je / ook in je mogelijke karakters staan?
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
^([^/]+)/(\d{1,2})/(\d{1,4})/?


De pagina laad niet correct, de css doet het niet en de plaatjes ook niet.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
#########################################
# REWRITE RULES                         #
#########################################
RewriteEngine On
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteRule ^([^/]+) index.php?page=$1 [L]
RewriteRule ^([^/]+)/(\d{1,2})/(\d{1,4}) index.php?p=$1&m=$2&y=$3 [L]
RewriteBase /
# END #
 
Jelmer -

Jelmer -

11/06/2010 17:56:12
Quote Anchor link
Dat komt omdat je relatieve paden gebruikt voor je css en plaatjes. Die denken dat ze in de map /pagina/1/2/ moeten zoeken. Zie mijn reacties over <base> en absolute urls.
 
Yea Rupie

Yea Rupie

11/06/2010 17:57:24
Quote Anchor link
Yea Rupie op 11/06/2010 17:54:58:
Jelmer rrrr op 11/06/2010 17:41:20:
Wat gaat er dan mis? En waarom heb je / ook in je mogelijke karakters staan?
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
^([^/]+)/(\d{1,2})/(\d{1,4})/?


De pagina laad niet correct, de css doet het niet en de plaatjes ook niet.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
#########################################
# REWRITE RULES                         #
#########################################
RewriteEngine On
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteRule ^([^/]+) index.php?page=$1 [L]
RewriteRule ^([^/]+)/(\d{1,2})/(\d{1,4}) index.php?p=$1&m=$2&y=$3 [L]
RewriteBase /
# END #




Bij een url van : home/6/2010
Is dit de $_GET variabel: Array ( [page] => home )

en als ik base gebruik, komt die in home/6/

verder zal ik overal dit voorzetten: http://www.xxx.nl
Gewijzigd op 11/06/2010 18:02:32 door Yea Rupie
 
Jelmer -

Jelmer -

11/06/2010 19:27:09
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
RewriteRule ^([^/]+)$ index.php?page=$1 [L]

Die $ aan het eind van het pattern staat voor "het einde". Als er niets na komt, matcht die regel niet.
Andere oplossing is om gewoon die twee RewriteRules om te wisselen, zodat de minst-specifieke, die dus het meeste matcht, onderaan staat.
 
Piet Verhagen

Piet Verhagen

11/06/2010 20:32:29
Quote Anchor link
Yea Rupie op 11/06/2010 17:57:24:
verder zal ik overal dit voorzetten: http://www.xxx.nl

Complete domeinnaam hoeft er niet voor, pad beginnen met een / kan ook.
 
Pim -

Pim -

11/06/2010 20:38:06
Quote Anchor link
Heb je mijn post over het in PHP regelen van routes überhaupt gelezen?
 



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.