url rewriting check?

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Applicatiebeheerder/ Ontwikkelaar

Dit ga je doen - Verantwoordelijkheid dragen voor het complexe applicatielandschap; - Schakelen met eindgebruikers en leveranciers; - Verdeling in werkzaamheden tussen dagelijks beheer ontwikkelen; - Het analyseren van de behoeften van gebruikers en het vertalen hiervan naar functionele specificaties voor de applicaties; - Actief bijdragen aan het leveren van passende oplossingen voor het applicatielandschap. Hier ga je werken Deze organisatie, gevestigd in de regio van Amsterdam is een van de meest toonaangevende mediaorganisaties in Nederland. Door de organisatiecultuur krijg jij veel ruimte om initiatief te nemen en zelfstandig aan het werk te gaan. Samen met het IT team zorg

Bekijk vacature »

Backend Developer Integraties API HBO REST

Samengevat: Deze werkgever is een IT-consultancy. Wil jij werken als Backend Developer Integraties? Heb jij kennis van gangbare berichtformaten? Vaste baan: Backend Developer Integraties API HBO €3.100 - €4.400 Zij bieden innovatieve oplossingen die bedrijven efficiënter en wendbaarder maken, waardoor onze klanten zich net zo snel kunnen ontwikkelen als de business van hen vraagt. Bij bij hun werk je aan onze eigen bedrijfsapplicaties. Je ontwikkelt met ons de meest nieuwe software. Wij blinken uit als het gaat om de inzet van technologie. Deze werkgever staat open voor elke nieuwe trend. Onze systemen zijn groot en ingewikkeld. Hou jij van diepgang

Bekijk vacature »

IoT Developer

Ben jij innovatief, heb jij passie voor energie en ben je data gedreven? Bouw dan mee aan IoT binnen Bredenoord. Samen met een gedreven team werk jij aan mooie technische en innovatieve oplossingen. Wat houdt de functie van IoT Developer in? Binnen Bredenoord zijn wij momenteel volop in ontwikkeling met ons IoT platform. Als uitbreiding van ons team zijn wij op zoek naar een IoT Developer. Je zal in projectverband meehelpen met het implementeren van IoT vraagstukken binnen Bredenoord. Als IoT Developer op onze R&D-afdeling word je verantwoordelijk voor het verder inrichten en beheren van ons nieuwe IoT platform. Dat

Bekijk vacature »

Mendix Consultant / Developer

Dit ga je doen Het in kaart brengen en analyseren van de functionele wensen van de klant rondom Mendix applicaties; Het fungeren als sparringpartner voor de (interne) klanten; Het opstellen van requirements en het vertalen hiervan naar technische mogelijkheden; Het opstellen van user stories; Het bouwen van de Mendix applicaties in samenwerking met jouw team of zelfstandig; Het testen van op te leveren software en het zorg dragen voor de implementatie; Trainen van gebruikers in het gebruik van de applicatie; Werken in een Agile omgeving. Hier ga je werken De organisatie begeeft zich in de retail branche en focust zich

Bekijk vacature »

Senior Front end developer Digital Agency

Functie Jij als Front end developer komt te werken in een van de 8 multidisciplinaire teams binnen de organisatie. Deze teams werken op basis van Scrum agile in 2 wekelijkse sprints. De grootte van de teams varieert van 9-14 collega’s en bestaan altijd uit één of meerdere project managers en een project manager. Samen met je team werk je aan verschillende projecten voor uiteenlopende klanten zoals grote multinationals tot het kleine mkb. De stack waarmee gewerkt wordt is voornamelijk Javascript, ES6, Es.next, HTML, CSS, React.js en Node.js. Wat deze organisatie onderscheid is dat ze echt langdurige partnerships aangaan met hun

Bekijk vacature »

Medior Java developer (fullstack)

Wat je gaat doen: 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 je eventueel ook andere ontwikkelaars begeleiden in het softwareontwikkelproces. Verder draag je positief bij aan de teamgeest binnen een projectteam en je kijkt verder dan je eigen rol. Je gaat software maken voor verschillende opdrachtgevers in jouw regio. Je bent een professional die het IT-vak serieus neemt en kwaliteit levert. Je leert snel vanwege je diepgaande

Bekijk vacature »

Back-end Programmeur

Functieomschrijving Heb jij kort geleden je HBO ICT in ontvangst mogen nemen? Of ben je toe aan een nieuwe uitdaging? Voor een ambitieuze werkgever in de regio van Breda zijn wij op zoek naar een Back-end programmeur met affiniteit met C#.NET, SQL en MS Access. Samen met team bestaand uit ware ICT professionals ben je verantwoordelijk voor het bouwen van maatwerk software voor hun klanten. Belangrijk is dat je kennis of ervaring hebt van C#.NET en SQL. Je toont een flexibele en sociale houding naar klanten toe. Je denkt in nieuwe mogelijkheden & gaat graag de uitdaging aan. Bedrijfsprofiel De

Bekijk vacature »

Embedded Developer C++

Functie omschrijving Ben jij op zoek naar een leuke uitdaging als Embedded Developer, zoek dan niet verder! Voor een leuke opdrachtgever in omgeving Rotterdam zijn wij op zoek naar een Embedded Developer die graag met Embedded Devices werkt. Je zult verantwoordelijk worden voor het ontwikkelen en onderhouden van diverse producten. Jouw specialisatie ligt op het vlak van software, hardware en back-end. Dit bedrijf is gespecialiseerd in het ontwerpen van software voor een unieke industrie. Wil jij betrokken worden bij een proces dat loopt van ontwikkeling tot installatie? Waarbij je bezig zult zijn met perfecte systemen die geleverd worden aan binnen

Bekijk vacature »

Developer Angular & Kotlin

Dit ga je doen Het (door)ontwikkelen van mobiele apps en webapplicaties; Het opstellen van technisch ontwerp en het bespreken van ontwerpen met de software architect; Het uitvoeren van werkzaamheden op het gebied van technisch testen; Het in de gaten houden van nieuwe ontwikkelingen op jouw vakgebied en het adviseren van de organisatie hierover. Hier ga je werken Het gaat om een bekend internationaal handelsbedrijf met ruim 800 medewerkers, verdeeld over verschillende deelbedrijven. Deze organisatie is van oorsprong een familiebedrijf, er wordt hard gewerkt, er heerst een no nonsense en doeners mentaliteit, een informele sfeer en er is een mix van

Bekijk vacature »

Medior C# Developer

You'll build modern applications for Coolblue's back office. We have a lot of friends, and they crave well-structured data and user-friendly, task-focused applications. How do I become a Medior C# Developer at Coolblue? You regularly participate in brainstorm sessions about user experience, data, and task flow with the UX Designer, Product Owner, and Data Scientists in your team. Besides that you will create disconnected, highly congruent, and testable code that can easily be maintained and is future-proof. Want to become C# Developer at Coolblue? Read below if the job suits you. You enjoy doing this Working with various types of

Bekijk vacature »

E-Identity Developer met Projectleider Kwaliteiten

Functieomschrijving Voor de kamer van koophandel zijn we op zoek naar een E-Identity developer met projectleider kwaliteiten. Voor deze opdracht zoekt KVK een Informatieanalist met Technisch Projectleider en ICT developer kwaliteiten, met kennis van E-identity. We zoeken in de breedte en niet specifiek in de diepte qua skillset. Een Junior Projectmanager, een Junior Informatieanalist, een Junior Developer (full stack), een Junior Designer en een Junior ICT architect ineen, met een sterk gevoel van stakeholder management en planning vaardigheden. Door de internationale setting, én de realisatie van ontsluiting van en naar basisregisters toe zijn wij op zoek naar enige ervaring binnen

Bekijk vacature »

Front end developer

Functie Jij als ervaren Front end developer bent een expert het gebied van Javascript en React. Je wordt onderdeel van een multidisciplinair team bestaande uit een PO, twee Front end developers, een DevOps/Back end developer, een UX/UI designer en een projectmanager. Verder is er iemand verantwoordelijk voor de HR en is de algemeen directeur nauw betrokken bij alle projecten. Dagelijks hou jij je bezig met de verschillende projecten die zijn opgenomen in de sprint. Daarnaast denk je mee over mogelijke oplossingen om de behoefte van de klant op de beste manier in te vullen. Verder spar jij intern met collega’s

Bekijk vacature »

C# Unity Developer

Functieomschrijving Ontwikkel jij mee door applicaties te bouwen die bijdragen aan het optimaliseren van processen? Voor een erkende werkgever in regio Tilburg zijn wij op zoek naar een Unity C# Developer die graag de uitdaging aangaat! Jouw werkzaamheden zullen er als volgt uitzien: Je bent een luisterend oor naar klanten en vertaalt hun wensen door naar bruikbare software; Je werkt aan innovatieve softwareoplossingen voor het verbeteren en/of vernieuwen van processen; Je bent verantwoordelijk voor het uitvoeren van updates/aanpassingen aan de reeds draaiende applicaties. Bedrijfsprofiel Je komt te werken voor een internationale werkgever in regio Tilburg. Samen met een vooruitstrevend team

Bekijk vacature »

Senior Front-end Developer

Sogeti is een organisatie met een goede werksfeer en zo min mogelijk hiërarchische verhoudingen. Ga je bij ons als Senior Front-end Developer aan de slag? Dan werk je dagelijks met collega’s aan de mooiste IT-projecten. Deze snelgroeiende groep collega’s krijgt energie van hun vak en dat merk je op de werkvloer. Onze klantenkring is groot en divers, dat vraagt om flexibiliteit van jou. Tegelijkertijd betekent dit dagelijks nieuwe dingen leren én dat geen werkdag hetzelfde is. Natuurlijk krijg jij de mogelijkheid je te certificeren. We organiseren regelmatig technische Meet-ups en doen we veel aan kennisdeling waarbij iedereen welkom is, zowel

Bekijk vacature »

Back-end developer (Magento2)

Functie E-commerce is een ‘’snelle’’ wereld. Om hierin continu voorop te blijven omarmen ze in een vroeg stadium nieuwe technieken. Een webshop is nooit af en kan altijd beter, sneller en efficiënter. Tegelijkertijd hebben ze vanaf hun oprichting altijd vastgehouden aan kwaliteit boven snelheid, en dit loont. Als back-end developer fungeer je als het verlengstuk van hun klanten. Technisch complexe zaken pak je met liefde op, en hierin werk je samen met o.a. front-end developers en designers. Klanten verwacht hierin kwaliteit van het hoogste niveau en een proactieve, meedenkende rol bij het maken van zowel technische als strategische keuzes. Ga

Bekijk vacature »

Pagina: 1 2 volgende »

Ozzie PHP

Ozzie PHP

31/01/2012 12:28:07
Quote Anchor link
Ola vrienden,

Is het mogelijk om via php te controleren of URL rewriting mogelijk is?

In mijn cms wil ik dit soort urls kunnen gebruiken:
www.mijnsite.nl/nieuwepagina

Echter, als URL rewriting niet mogelijk is dan zal je dezelfde pagina als volgt moeten aanroepen:
www.mijnsite.nl/index.php?route=nieuwepagina

Nu wil ik eigenlijk tijdens de installatie van mijn cms gaan controleren of URL rewriting is ingeschakeld. Ik dacht dan om via het cms een testpagina aan te roepen:
www.mijnsite.nl/testpagina

Maaaar... als URL rewriting niet werkt dan gaat dit natuurlijk niet werken want dan kan ie de pagina niet vinden en krijg je dus een 404 pagina. Is hier iets op te verzinnen?

Waarom ik dit wil weten... als URL rewriting niet in ingeschakeld dan wil ik dat het CMS automatisch alle links prefixt met "index.php?route=".

Iemand suggesties?
 
PHP hulp

PHP hulp

08/01/2025 18:01:40
 
Ozzie PHP

Ozzie PHP

02/02/2012 11:33:52
Quote Anchor link
* Bump *
 
Pieter Jansen

Pieter Jansen

02/02/2012 11:46:58
Quote Anchor link
Ja Ozzie, dat is mogelijk. Ik start m`n IDE even op en als ik de code heb gevonden post ik het hier.

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
<?php

/**
 * A method to help see if mod_rewrite is on. If mod_rewrite is on, the dispatch of
 * index.php can be ignored, otherwise, that node in the request URI should be filtered
 * out.
 * @uses SetEnv HTTP_MOD_REWRITE On /* in .htaccess
 * @return bool true if on, false otherwise
 */

function IsModRewriteOn ()
{

    if(function_exists('apache_get_modules'))
        {

            $modules = apache_get_modules();
            $rewrite = in_array('mod_rewrite', $modules);
        }

        else
        {
        // Hier zou je dus in een .htaccess moeten typen: SetEnv HTTP_MOD_REWRITE On
            $rewrite = (getenv('HTTP_MOD_REWRITE') == 'On') ? true : false ;
        }

        return $rewrite;
    }


?>
Gewijzigd op 02/02/2012 11:50:12 door Pieter Jansen
 
Wouter J

Wouter J

02/02/2012 11:48:18
Quote Anchor link
Je kan kijken of mod_rewrite in de array zit die apache_get_modules terug geeft:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
<?php
if( in_array('mod_rewrite', apache_get_modules()) )
  echo 'mod rewrite enabled!';
else
  echo 'noo, we cannot make SEO urls!!! :(';
?>


Maar als PHP als CGI module wordt gebruikt kan dit niet, je hebt dan geen toegang tot de phpinfo() functies. Je kan het via de shell functies doen. Maar je kan ook handmatig een .htaccess file aanmaken en bijv. file1.txt en file2.txt. In de .htaccess schrijf je RewriteRule file2\.txt file1.txt. Vervolgens kijk je of de waarde die file_get_contents( file2.txt ) gelijk is aan de waarde van file2 of aan de waarde van file1. Hiermee kan je afleiden of .htaccess 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
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
<?php

function isModRewriteEnabled()
{

  try
  {
    writeFile( 'file1.txt', 'file1' );
    writeFile( 'file2.txt', 'file2' );
    writeFile( '.htaccess', 'RewriteEngine On'.PHP_EOL.'RewriteRule file2\.txt file1.txt' );

    if( file_get_contents('file2.txt') !== 'file1' )
      return false
    return true;
  }

  catch( LogicException $e )
  {

    echo '[ERROR] '.$e->getMessage();
  }

  catch( Exception $e )
  {

    echo $e->getMessage();
  }

  return false;
}

function
writeFile( $file, $text )
{

  $f = fopen($file, 'w');
  if( $f !== false )
  {

    if( (fwrite($f, $text)) !== false )
    {

      fclose($f);
      return true;
    }

    else
      throw new LogicException('We cannot write to the file');
  }

  else
    throw new LogicException(sprintf('The file(%s) cannot opened', $file));
  return false;
}
Gewijzigd op 02/02/2012 11:57:35 door Wouter J
 
Ozzie PHP

Ozzie PHP

02/02/2012 11:51:14
Quote Anchor link
@Merijn: thanks... ik zie het graag tegemoet.

@Wouter: dankjewel. Maar... zou het kunnen zijn dat de module wel aanwezig is, maar niet ingeschakeld? Dus dat ie wel in de array voorkomt, maar disabled is? Of is ie altijd enabled als ie in de array zit?
 
Pieter Jansen

Pieter Jansen

02/02/2012 11:56:37
Quote Anchor link
Ik heb de code even aangepast, als het goed is staat het erin.

Edit:

Antwoord op je hierboven gestelde vraag, ja. Als de modules in de lijst voorkomen, betekent het dat ze zijn ingeschakeld. Apache_get_modules() geeft alleen de geladen modules terug, niet alle modules die eventueel beschikbaar zouden zijn.
Gewijzigd op 02/02/2012 11:58:53 door Pieter Jansen
 
Ozzie PHP

Ozzie PHP

02/02/2012 12:04:44
Quote Anchor link
Oké. Ik zet bij de installatie van mijn CMS een standaard .htaccess in de root van de www folder. Daar heb ik o.a. in staan:

<IfModule mod_rewrite.c>

# Turn on the rewrite engine.
RewriteEngine On

</IfModule>

Ik schakel de rewrite engine dus altijd in... maar dan weet ik dus niet of de module wel of niet aan staat. Dat kan ik dan mooi controleren met apache_get_modules(). Volgens mij ga ik dat CGI niet gebruiken, dus dan volstaat deze code prima lijkt me:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
<?php
if( in_array('mod_rewrite', apache_get_modules()) )
  echo 'mod rewrite enabled!';
else
  echo 'noo, we cannot make SEO urls!!! :(';
?>
 
Pieter Jansen

Pieter Jansen

02/02/2012 12:08:24
Quote Anchor link
Jep, dat klopt. Maar apache_get_modules() hoeft niet perse of elke PHP installatie te gebruiken zijn vandaar dat ik een toevoeging heb, getenv('HTTP_MOD_REWRITE') == 'On'. Puur persoonlijk waarschijnlijk.
 
Ozzie PHP

Ozzie PHP

02/02/2012 12:13:44
Quote Anchor link
Is apache_get_modules niet een standaardonderdeel van PHP dan?

Het lijkt alsof het vanaf versie 4.3.2 aanwezig is: http://nl2.php.net/apache_get_modules

...maar ik zie ook iets staan (links in het menu) over server specific extensions?

Is het dan wel of niet altijd aanwezig? Ik dacht eigenlijk dat getenv niet altijd aan te raden was?
 
Pieter Jansen

Pieter Jansen

02/02/2012 12:15:48
Quote Anchor link
Nee getenv is eigenlijk niet goed. Ik dacht dat het er standaard trouwens wel in zat, die apache_get_modules(). Ik heb die getenv alleen voor het geval dat.
 
Ozzie PHP

Ozzie PHP

02/02/2012 12:17:45
Quote Anchor link
Maaaar... nu realiseer ik me ineens iets...

Wat nou als mijn cms niet op een apache server staat? Maar op een Windows machine?

Werkt die functie dan nog?

Is dat soms de reden waarom je function_exists hebt gebruikt en die getenv?
 
Pieter Jansen

Pieter Jansen

02/02/2012 12:23:34
Quote Anchor link
Ja daar zou je ze inderdaad voor kunnen gebruiken. Maar de kans dat ze op een niet-apache server staan is vrij klein hoor. IIS draait verder de standaard PHP modules, maar goed, dat geldt dus niet voor apache in dat geval. Maar, .htaccess werkt geloof ik ook niet meer dan.. Ze hebben een andere taal daar voor en een andere naam. Ik weet zo een twee drie niet wat dat is.

Edit:

even gegoogled en ze gebruiken daar XML voor. Dus daar schiet je niet veel mee op denk ik.
Gewijzigd op 02/02/2012 12:25:20 door Pieter Jansen
 
Ozzie PHP

Ozzie PHP

02/02/2012 12:26:33
Quote Anchor link
Ik heb dat wel eens gehad dat ik voor een baas werkte waar alles op IIS draaide en met een trucje (weet niet meer hoe precies) draaide htaccess gewoon.

Maar stel nu dat je op een niet-Apache server draait. Bestaat die functie dan ook echt niet? Met andere woorden, moet je wel die function_exists gebruiken?
 
Pieter Jansen

Pieter Jansen

02/02/2012 12:31:11
Quote Anchor link
Ja dan wel. Anders krijg je een warning dat je function aanroept die niet bestaat.

Functies bestaan in PHP in de vorm van grote libraries. De modules om de juiste term te gebruiken. De standaard PHP installatie die je kunt downloaden van php.net is bijvoorbeeld een kale versie. Daar zitten x aantal PEAR packages in en de core PHP. Maar voor meerdere dingen kun je ook extensions en modules toevoegen. Apache is daar een van.
Gewijzigd op 02/02/2012 12:33:45 door Pieter Jansen
 
Ozzie PHP

Ozzie PHP

02/02/2012 12:36:26
Quote Anchor link
Ah oké, dan gebruik ik gewoon die function_exists en getenv. Thanks!
 
Pieter Jansen

Pieter Jansen

02/02/2012 12:45:22
Quote Anchor link
Ik besef me net dat als je .htaccess om kan zetten naar xml en daar dus de environment variabelen uit kunt lezen, dat getenv dus wel werkt ook IIS. HTTP_MOD_REWRITE is dan namelijk ook op IIS dan een environment variabele. Dan zou dat je backup voor IIS kunnen zijn.
 
Ozzie PHP

Ozzie PHP

02/02/2012 12:53:25
Quote Anchor link
Maar als ik nou niks wil omzetten naar xml heeft die getenv dan wel of geen zin? Of werkt getenv wel op IIS?
 
Pieter Jansen

Pieter Jansen

02/02/2012 12:55:26
Quote Anchor link
getenv zit in PHP zelf. Alles wat je met phpinfo(); kunt opvragen kun je met getenv krijgen. Dus ook op IIS servers. Daarnaast gebruik ik het als een conditional statement, dus mocht het anders heten is het een kwestie van een nieuwe condition toevoegen mocht het op IIS anders heten.
 
Ozzie PHP

Ozzie PHP

02/02/2012 13:11:27
Quote Anchor link
Zou dat dan kunnen dat het op IIS anders heet? Is dat niet altijd hetzelfde?
 
Pieter Jansen

Pieter Jansen

02/02/2012 13:13:07
Quote Anchor link
Dat durf ik niet te zeggen, ik werk alleen met IIS als ik in C# zit en ik zit daar niet veel in op webservers. Dat zou je even moeten controleren bij IIS zelf. Of op een IIS community moeten vragen. Je mag wel verwachten dat andere environment variabelen als $_POST etc werken dus ik _gok_ dat het werkt. Maar goed, ik heb de jackpot niet gewonnen.. dus ja..
 
Ozzie PHP

Ozzie PHP

02/02/2012 13:15:25
Quote Anchor link
Ah oke... maar ik bedoel niet of die getenv werkt, maar of dat "HTTP_MOD_REWRITE" op Apache hetzelfde heet als op IIS. Of bedoel jij hetzelfde?
 

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.