.htaccess rewrite url

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Wolters Kluwer - PHP Developer (Freelance/ZZP)

Voorstellen met CV en korte toelichting 2 dagen naar kantoor (di + do) Ontwikkelen van producten van Schulinck. Product: https://gripop.schulinck.nl/ Startdatum: ZSM Max tarief: 90€ per uur Procedure: Gesprek en test: code en analyse (oplossingsvermogen). Periode is tenminste 6 maanden met optie op verlenging Fullstack PHP Developer Ben jij een ervaren Fullstack PHP Developer die op zoek is naar een nieuwe uitdaging? Vind je het belangrijk om werk te doen waarmee je het verschil maakt in de maatschappij? En wil je onderdeel worden van ons ervaren IT-team? Lees dan snel verder! Schulinck, onderdeel van Wolters Kluwer Schulinck (onderdeel van Wolters

Bekijk vacature »

Randstad - Salesforce Developer (Freelance/ZZP)

Startdate: ASAP As part of our strategy, Randstad is strengthening its digital capabilities and strives to work more closely with the 38 Randstad countries in collective leadership. The program that will bring many of these developments together is Connect IT. The program will start with the implementation in the Netherlands and will become the main platform for all operating companies (opcos) of Randstad in the coming years. The platform is synchronized with omnichannel, data, marketing and IT service solutions and is based on Salesforce and Bullhorn technology. The challenge is to keep all roadmaps and priorities aligned as the core

Bekijk vacature »

Front End Developer Javascript VueJS

Wie wordt jouw werkgever?: WR zoekt voor een vaste medewerker voor de volgende werkgever, je treedt gelijk in dienst bij deze werkgever: Wij draaien om een revolutionaire oorsensor voor melkveehouders. Ben jij geschikt als Front End Developer? Heb je ervaring met Javascript? Vaste baan: Front End Developer Javascript VueJS HBO 3.000 - 4.500 Front End Developer Ons bedrijf heeft met een team van gedreven collega’s een revolutie teweeggebracht in de wereld van koemonitoringssystemen. Met hun oor-sensortechnologie helpen we veehouders wereldwijd om de productiviteit en winstgevendheid van hun melkveebedrijf te verhogen. Bij bij hun werk je aan onze eigen bedrijfsapplicaties. Je

Bekijk vacature »

Wolters Kluwer - PHP Developer (Freelance/ZZP)

Voorstellen met CV en korte toelichting 2 dagen naar kantoor (di + do) Ontwikkelen van producten van Schulinck. Product: https://gripop.schulinck.nl/ Startdatum: ZSM Max tarief: 90€ per uur Procedure: Gesprek en test: code en analyse (oplossingsvermogen). Periode is tenminste 6 maanden met optie op verlenging Fullstack PHP Developer Ben jij een ervaren Fullstack PHP Developer die op zoek is naar een nieuwe uitdaging? Vind je het belangrijk om werk te doen waarmee je het verschil maakt in de maatschappij? En wil je onderdeel worden van ons ervaren IT-team? Lees dan snel verder! Schulinck, onderdeel van Wolters Kluwer Schulinck (onderdeel van Wolters

Bekijk vacature »

Randstad - Salesforce Developer (Freelance/ZZP)

Startdate: ASAP As part of our strategy, Randstad is strengthening its digital capabilities and strives to work more closely with the 38 Randstad countries in collective leadership. The program that will bring many of these developments together is Connect IT. The program will start with the implementation in the Netherlands and will become the main platform for all operating companies (opcos) of Randstad in the coming years. The platform is synchronized with omnichannel, data, marketing and IT service solutions and is based on Salesforce and Bullhorn technology. The challenge is to keep all roadmaps and priorities aligned as the core

Bekijk vacature »

Full Stack Java Developer

Functieomschrijving Are you an experienced Full Stack Java Developer looking for an international, creative and innovative environment? Would you like to work on a self-service data platform, making sure our data makes its way from a vast array of sources to the right place? At Randstad Groep Nederland (HQ) we are looking for you! We’re looking for a Full Stack Java Developer available to join our internal team immediately. Full Stack Java Development at Randstad Groep Nederland (HQ) Team Chef’s Special consists of a group of experienced professionals who together are pioneering in a development environment that is new to

Bekijk vacature »

Wolters Kluwer - PHP Developer (Freelance/ZZP)

Voorstellen met CV en korte toelichting 2 dagen naar kantoor (di + do) Ontwikkelen van producten van Schulinck. Product: https://gripop.schulinck.nl/ Startdatum: ZSM Max tarief: 90€ per uur Procedure: Gesprek en test: code en analyse (oplossingsvermogen). Periode is tenminste 6 maanden met optie op verlenging Fullstack PHP Developer Ben jij een ervaren Fullstack PHP Developer die op zoek is naar een nieuwe uitdaging? Vind je het belangrijk om werk te doen waarmee je het verschil maakt in de maatschappij? En wil je onderdeel worden van ons ervaren IT-team? Lees dan snel verder! Schulinck, onderdeel van Wolters Kluwer Schulinck (onderdeel van Wolters

Bekijk vacature »

Front end developer

Functie Jij als front end developer gaat werken binnen de teams van onze klant, uiteraard met alle moderne technieken. Opdrachten worden echt gericht op jouw leerdoelen en jouw behoeftes. Wij hebben een omgeving gecreëerd waarin je echt jezelf kan zijn en waar echt gekeken wordt naar jouw voorkeuren. Maak je een fout? Geen probleem, leer ervan en dan ga weer door. Door de variëteit aan werk kun je in verschillende omgevingen een kijkje nemen en dus jezelf snel ontwikkelen. Eisen Je bent communicatief vaardig en houdt van een dynamische omgeving Je hebt HBO werk- en denkniveau Je hebt gedegen kennis

Bekijk vacature »

Junior .NET developer

Functie Als junior .NET developer start jij in een development team met twee ervaren software ontwikkelaars. Jouw persoonlijke ontwikkeling is voor ons erg belangrijk en jij gaat dan ook meelopen met onze Senior .NET ontwikkelaar die jou met zijn kennis en ervaring een goede begeleiding kan aanbieden. Als team zijn jullie verantwoordelijk voor het schrijven van software voor onze toonaangevende Automatiseringssystemen. Jij gaat aan de slag met de onderhoud van de kernsoftware, ondersteund de software van derden door het gebruik van onze webservices en als team zijn jullie verantwoordelijk voor het ontwikkelen van onze backend oplossingen. Wij maken op dit

Bekijk vacature »

Front end ontwikkelaar

Functie Het huidige team bestaat uit momenteel uit 5 back end developers verdeeld van senior tot junior. Omdat de gehele front end van applicaties anders gaan insteken zijn ze op zoek naar een ervaren Front end developer die hen kan helpen de juiste keuzes te maken. Je krijgt veel vrijheid om te bepalen hoe je dit wilt ontwikkelen en vrijheid in welke techniek je hiervoor wilt gebruiken. Je zult je dus bezighouden met architectuur, documentatie en natuurlijk ontwikkeling van nieuwe functionaliteiten binnen de verschillende applicaties. natuurlijk heb jij ook mogelijkheden om te sparren binnen het team, maar ze gaan uit

Bekijk vacature »

KPN - Backend Developer - Product Master (Freelanc

Must: Scala and Akka Senior positon Start date: ZSM End date: 01-07-2023 Max hourly rate: 79,25€ Your job as a Backend Developer Many KPN employees in all different types of processes rely on accurate and complete product data. The product master will be a new master data management implementation within KPN for the business market. It supports the goals of KPN to become the best service provider, simplification in processes and IT, digitalization and most of all to become a data driven organization. The essence is to have a single master platform that embodies all the needed product data in

Bekijk vacature »

Randstad - Fullstack Java Developer (Freelance/ZZP

Start date: ASAP Duration: 1 year initially Hours per week: 40 (32 minimum) Dutch is mandatory Max hourly rate: 85€ Strong communicator There is a vacancy in the Corporate Client Solutions (CCS) team. This team works closely together with the Online Client Solutions (OCS) team and the product owner on the client portal. Through the web portal, the various services from the business are delivered to the clients of Randstad Group Netherlands. CCS works for the corporate customers of Randstad and OCS works for customers in the SME segment. Both teams consist of a number of full stack developers, an

Bekijk vacature »

Software developer

Functie Momenteel zijn ze op zoek naar een Software developer die, veelal fullstack, mee gaat werken aan de ontwikkeling van de producten en zo helpt aan de uitvoering van hun ontwikkelprojecten. Je komt te werken binnen hun development team bestaande uit 6 ontwikkelaars. Ze staan zowel open voor meer junior als medior/senior developers. Je kunt snel veel verantwoordelijkheid krijgen en doorgroeien binnen het bedrijf. Bovendien ben je betrokken bij het bepalen van de product roadmap en de inbreng van (nieuwe) technologieën. De applicaties waaraan je werk worden gebruikt op onderwijsinstellingen door heel Nederland. De tech-stack bestaat voornamelijk uit Laravel (PHP),

Bekijk vacature »

Junior Robot Programmeur

Bedrijfsomschrijving: Locatie: regio Haarlem Deze organisatie ontwikkelt, test & released robots en verzorgt het product lifecycle management, vanaf potloodschets tot implementatie. Producten worden geschikt gemaakt voor seriefabricage. Als Junior Robot Programmeur werk je samen met de Product Engineers, Cost Engineers, Test Engineers, Process Engineers en Workshop Technicians. Ze streven naar robuuste producten die onder uitdagende omstandigheden, over de hele wereld goed blijven functioneren. Lijkt het jou leuk om dagelijks met innovatie bezig te zijn en robots te ontwikkelen in een multidisciplinair team met een projectmatig karakter? Wil je als Junior Robot Programmeur meewerken aan het ontwerpen en ontwikkelen van state

Bekijk vacature »

Randstad - Fullstack Java Developer (Freelance/ZZP

Start date: ASAP Duration: 1 year initially Hours per week: 40 (32 minimum) Dutch is mandatory Max hourly rate: 85€ Strong communicator There is a vacancy in the Corporate Client Solutions (CCS) team. This team works closely together with the Online Client Solutions (OCS) team and the product owner on the client portal. Through the web portal, the various services from the business are delivered to the clients of Randstad Group Netherlands. CCS works for the corporate customers of Randstad and OCS works for customers in the SME segment. Both teams consist of a number of full stack developers, an

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

16/08/2022 02:34:55
 
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.