.htacces vraag

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Embedded Software Developer Games

Functie omschrijving Heb jij affiniteit met hardware en wil jij kleuren binnen een Qt framework? Spreek jij de talen C en of C ++? Dan ben ik wellicht opzoek naar jou! Voor een super gave opdrachtgever in omgeving Delft is er namelijk plek voor een nieuwe kracht! Dit bedrijf is gespecialiseerd in het ontwerpen van software voor een unieke game 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 en buitenland? Je zult in een team, samen met vier ontwikkelaars, de mooiste

Bekijk vacature »

Fasttrack learning & development voor Java dev

Wat je gaat doen: Wij zoeken enthousiaste en ambitieuze junior en medior ontwikkelaars die toe zijn aan de volgende stap in hun carrière. Wij helpen je op je pad naar senior ontwikkelaar door ons fasttrack learning en development programma. Na een kort en intensief programma ga jij aan de slag bij klanten van DPA. Daarnaast krijg je veel ruimte om je te ontwikkelen als persoon en als specialist. De eerste maand gaan we aan de slag om je certificeringen te behalen waaronder OCP (Oracle Certified Professional). Daarnaast nemen we een deepdive in Spring Boot. Ook laten we je kennismaken met

Bekijk vacature »

Back-end Developer

Functieomschrijving Heb jij kort geleden je HBO ICT Informatica diploma in ontvangst mogen nemen? Of heb je een aantal jaar ervaring als Software Developer en ben je klaar voor een nieuw hoofdstuk in jouw carrière? Voor een gewaardeerde werkgever in de regio van Goirle zijn wij op zoek naar een junior/medior Back-end Developer met affiniteit met MS Acess. Samen met een vooruitstrevend team ben je verantwoordelijk voor het ontwikkelen van maatwerk software voor hun klanten. Je hebt kennis of ervaring van SQL en affiniteit met MS Acess. Je bent klantvriendelijk en flexibel ingesteld en vindt het leuk om klanten te

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 »

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 »

Database Developer

Functieomschrijving Wat ga je doen? Als developer ben jij samen met een gemotiveerd team van 10 collega’s verantwoordelijk voor het creëren van aangemeten software voor klanten. Je bent klantvriendelijk en oplossingsgericht ingesteld, omdat het essentieel is om de klanten zo goed mogelijk te helpen met hun uitdagingen. Het is mogelijk om vanuit huis je werkzaamheden uit te voeren, maar het is ook prettig als je in de omgeving van Tilburg woont om naar het kantoor te kunnen komen. Vind jij het leuk om jouw creatieve vaardigheden te benutten om complexe systemen te ontwikkelen? Lees dan snel verder! Bedrijfsprofiel Voor wie

Bekijk vacature »

Full Stack Software Developer C#.NET

Functieomschrijving Wij zijn op zoek naar een gepassioneerde Full Stack C#.NET Software Developer. Als Software Developer ben je verantwoordelijk voor het ontwikkelen van webapplicaties, apps en dashboards voor de eigen IOT-oplossingen. Je werkt samen met andere ontwikkelaars en engineers om de sensoren in machines uit te lezen en deze data om te zetten in management informatie voor jullie klanten. Taken en verantwoordelijkheden: Ontwikkelen en onderhouden van webapplicaties, apps en dashboards voor de eigen IOT-oplossingen. Testen en valideren van de ontwikkelde software. Actief deelnemen aan code reviews en bijdragen aan het verbeteren van de kwaliteit van de software. Je gaat aan

Bekijk vacature »

Back-end Developer (Permanent position with the em

Bedrijfsomschrijving Dutch specialist in technical installation materials. Functieomschrijving Purpose of the position: Our client is looking for a Back-end Developer who, together with the rest of the energetic and dynamic team, is responsible for the development and management of the website. This not only concerns the development and management of the current website, but also the development of a new Headless Commerce Platform to keep the customer's website Future proof. Within the IT department, there is a real DevOps culture and the commerce team is at the forefront and tries to implement continuous improvements. Most important tasks: ï‚· Designing and

Bekijk vacature »

Anaplan Developer

Dit ga je doen What are you going to do: Picking up Stories: Design planning had, how are we going to build it in Anaplan; Talking to the end user to build a forecasting model; Having contact with the data team about which data is needed; Being able to convert an Excel sheet into a 3, 4 or 5 dimensional modeling environment; Giving knowledge sessions about Anaplan; Solving incidents; Making instructional videos on how teams should read forecasts; Writing blogs about forecasting. Hier ga je werken We are looking for an Anaplan Builder to deliver end-to-end solutions within a big

Bekijk vacature »

PHP developer (Laravel, Docker, Gitlab-CI)

Functie Het IT-team bestaat momenteel uit 4 ontwikkelaars. Ieder onderdeel van de software draait op aparte servers en het bestaat dus echt uit verschillende componenten intern ontwikkeld en je werkt aan alle facetten. Van uitbreiding van de core tot maatwerk voor de klant. Ook liggen er verschillende uitdagingen op servervlak en databases. Je zult de eerste periode veel samenwerken met de lead developer om vervolgens echt je gang te gaan binnen de software. Een groot deel van de systemen is gebouwd met behulp van het Laravel framework en PHP (minimaal 7.2), Docker voor lokaab gebruik en Gitlab-CI voor het deployen

Bekijk vacature »

PHP developer (Laravel/Vue.js)

Functie Het team telt momenteel 20 collega’s, bestaande uit developers (front- en backend) en het operations team, waaronder ook het management en twee scrum masters vallen. Ze zijn op zoek naar een PHP developer die in staat is zelfstandig te werken. Je komt te werken in één van de drie scrumteams en gaat aan de slag met een project voor de klant. Het fijne hieraan is dat je wel afwisseling hebt qua werk, maar tegelijkertijd doorlopend werkt voor bestaande klanten. Hierdoor krijg je ook de kans om echt de diepte in te gaan en innovatieve technische oplossingen neer te zetten.

Bekijk vacature »

Network Engineer (f/m/d) in Heidelberg

Network Engineer (f/m/d) The IT Services team operates and supports the IT infrastructure and services at EMBL headquarters in Heidelberg and at the laboratory’s sites in Barcelona and Rome. As part of IT Services, the Network team is responsible for managing and developing the network infrastructure in our data centres, on campus, and to our external network providers. As a leading scientific institution with highly data-intensive research, extensive data flows at and between the laboratory’s six sites and to the Internet, EMBL is connected to national and international scientific networks using state-of-the-art technologies from vendors including Cisco, Extreme Networks and

Bekijk vacature »

Full stack developer

Functie Binnen een ontzettend stimulerende werkomgeving kom jij te werken in een software team van 14 developers. Met ontzettend stimulerend bedoel ik een modern pand, wat voorzien is van alle nodige soft- en hardware, zodat jij jouw werk goed kan uitvoeren. Daarnaast zitten ze in een bos, waardoor je in een groene omgeving rustig kunt werken. Het team bestaat uit front end, back end en full stack developers. Jij krijgt dus de keuze hier waar jij jezelf het liefst op zou richten, maar de voorkeur gaat uit naar back end. Er wordt hier Scrum (agile) gewerkt in multidisciplinaire teams met

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 »

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 »
Jan Kila

Jan Kila

07/10/2021 16:00:07
Quote Anchor link
File structuur:
htdocs/mvcstruct/
- app/
- public/
- | css/
- | img/
- | js/
- |.htacces
- |index.php

Inhoud .htaccess:
<IfModule mod_rewrite.c>
Options -Multiviews
RewriteEngine On
RewriteBase /mvcstruct/public
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.+)$ index.php?url=$1 [QSA,L]
</IfModule>

Request URL: http://localhost:3000/mvcstruct/
Output:
Index of /mvcstruct
Parent Directory
app/
public/
OK, dat is volgens verwachting.

Request URL: http://localhost:3000/mvcstruct/public/
Output:
Hello World
OK, dat staat in index.php, prima.

Request URL: http://localhost:3000/mvcstruct/public/test.php
Output:
Not Found
The requested URL /mvcstruct/public/test.php was not found on this server.
Dit verwacht ik niet, wat doe ik verkeerd?
De file test.php zit niet in de map public; ik verwacht uitvoering van de RewriteRule en derhalve uitvoeren van index.php.
Wat doe ik verkeerd cq onvoldoende dan wel te veel?
 
PHP hulp

PHP hulp

16/07/2025 09:33:35
 
Rob Doemaarwat

Rob Doemaarwat

07/10/2021 17:34:40
Quote Anchor link
Wat staat er in je index.php? Is dit Apache die de 404 geeft, of misschien de afhandeling in je index.php?
 
Jan Kila

Jan Kila

07/10/2021 18:46:30
Quote Anchor link
Wat ik al zei:
Quote:
OK, dat staat in index.php, prima.
 
- Ariën  -
Beheerder

- Ariën -

07/10/2021 18:49:03
Quote Anchor link
Enkel een echo? Of doe je daar nog iets met routing?
 
Jan Kila

Jan Kila

07/10/2021 18:50:56
Quote Anchor link
Behalve "Hello World", verder helemaal niks.


Toevoeging op 07/10/2021 18:54:28:

Zet ik een file 'test.php' in de map public en dan
Request URL: http://localhost:3000/mvcstruct/public/test.php
Dan gaat ie braaf naar test.php
Wat te verwachten is want nu werken de 'RewriteCond' condities.
 
Ozzie PHP

Ozzie PHP

07/10/2021 21:12:20
Quote Anchor link
Jan Kila op 07/10/2021 16:00:07:
File structuur:
htdocs/mvcstruct/
- app/
- public/
- | css/
- | img/
- | js/
- |.htacces <----- VERKEERD GESPELD
- |index.php
 
Jan Kila

Jan Kila

07/10/2021 21:26:18
Quote Anchor link
Dat is wel de meest lullige, vandaag.
Niettemin: dank!

Inmiddels componeerde is een .htaccess, met die 's', die de .htaccess files in /app en /public overbodig maakt. Nu alleen nog deze .htaccess in de site_root:
Quote:
<files config.ini>
order allow,deny
deny from all
</files>
RewriteEngine On
Options -Indexes
Options +FollowSymLinks
RewriteBase /mvcstruct
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ public/index.php?url=$1 [NC,L,QSA]
 
Ivo P

Ivo P

08/10/2021 09:07:55
Quote Anchor link
ik zou het stukje "?url=$1" achterwege laten, net als QSA.

in index.php heb je toegang tot de url die in de browser getoond wordt via $_SERVER.
In mijn beleving is dat duidelijker.

Misschien ook wel, omdat ik geen urls gebruik met "/foo/test.php", maar iets als https://example.com/foo/test

Via een simpele explode() zou je die url al op kunnen delen in losse elementen en daar je ding mee doen. Zonder er rekening mee te hoeven houden dat iemand zelf al een ?url=xyz opneemt in de aanroep, en dat een deel van de inhoud ook nog url_decoded() nodig kan hebben.
 
Jan Kila

Jan Kila

08/10/2021 14:36:24
Quote Anchor link
@Ivo,
Quote:
ik zou het stukje "?url=$1" achterwege laten, net als QSA.

Ik wil van die hele .htaccess af, als dat kan.

M'n belangrijkste argument is efficiëntie. Met .htaccess schijnt het zo te zijn dat de server de gehele kerstboom van alle mappen met alle bestanden door fietst; en dat bij elke aanroep van de request URL doet. Dat lijkt me vrij inefficient; de computer is snel zat maar toch alle beetjes helpen.

Quote:
in index.php heb je toegang tot de url

Niet alleen daar, maar in alle documenten die middels "require once" doorgeeft.

Quote:
Misschien ook wel, omdat ik geen urls gebruik met "/foo/test.php", maar iets als https://example.com/foo/test

Ja, en dan via de Router doorsluizen naar het document dat je wilt genereren.

Als ik altijd en overal voortdurend, dus heel erg betrouwbaar, middels $_SERVER['REQUEST_URI'] de requested resource location inclusief de query string kan oppikken, dan is dat prima. Dat scheelt in elk geval het telkens opnieuw uitvoeren van .htaccess.



Toevoeging op 08/10/2021 15:00:11:

Een snelle test leert dat die .htaccess blijkbaar een noodzakelijk kwaad is.

Een Request URL als: "http://localhost:3000/mvcstruct/banaan" levert op:
"
Not Found
The requested URL /mvcstruct/banaan was not found on this server.
"
Ik wil dat een dergelijke URL altijd een vertaling ondergaat naar:" http://localhost:3000/mvcstruct/index.php";
Of wat hetzelfde is naar: "http://localhost:3000/mvcstruct/public/index.php" wanneer je wilt dat de rerouting naar een index.php in een map van de bestandsstructuur gaat.

Daarnaast wil ik een boodschap als:
"
Index of /mvcstruct
Parent Directory
app/
public/
"
nooit verschijnt.
En dat lukt voorzover mij bekend alleen met .htaccess

Voor een andere oplossing houd ik me aanbevolen.
 
- Ariën  -
Beheerder

- Ariën -

08/10/2021 15:04:21
Quote Anchor link
Een 'kerstboom' aan een hoop regels in .htaccess vermijd je gelukkig nu ook. Nu stuur je alles door naar index.php waarbij je bestaande bestanden en directories negeert. Zelfs bijna alle frameworks doen dit truukje, en dan kan je er wel vanuit gaan dat het efficiënt zal zijn.

Een directory-listing tegengaan moet je sowieso met .htaccess doen, of nog beter: Op server-niveau configureren.
 
Jan Kila

Jan Kila

08/10/2021 19:54:38
Quote Anchor link
@Arien,
Ik zei dat net iets anders:
Quote:
Met .htaccess schijnt het zo te zijn dat de server de gehele kerstboom van alle mappen met alle bestanden door fietst; en dat bij elke aanroep van de request URL doet.

Zo'n MVC-applicatie heeft al snel een 'kerstboom' aan bestanden; en daar moet .htaccess telkens en telkens weer opnieuw bij elke request doorheen ploegen.
Tenminste, als ik het goed heb begrepen; correct me if I'm wrong, please.
 
- Ariën  -
Beheerder

- Ariën -

08/10/2021 19:58:22
Quote Anchor link
Volgens mij niet. Dat gaat toch in de routing van je applicatie?
Enige wat .htaccess doet is een soort doorsturen.
 
Jan Kila

Jan Kila

08/10/2021 20:05:29
Quote Anchor link
Nou als je gelijk hebt, valt het mee.
Maar ik meen juist dat andere te hebben gelezen; en dat is niet gemakkelijk te begrijpen; en het kan ook zijn dat degene die het schreef, het ook niet goed wist.

En ja, het gaat in elk geval in de routing van de applicatie.

En ja, óók .htaccess moet zo'n werk doen, iedere keer opnieuw.

Iemand die er voor heeft gestudeerd mag het zeggen. Vooralsnog houd ik me bij .htaccess want ik weet niet beter.
 
- Ariën  -
Beheerder

- Ariën -

08/10/2021 20:13:56
Quote Anchor link
Er is ook geen ander alternatief, je wilt immers alles requests doorsturen naar index.php, en dat gebeurt ook. Heb je een link naar dat artikel?
 
Rob Doemaarwat

Rob Doemaarwat

08/10/2021 21:16:16
Quote Anchor link
Als het om een fysieke sub-(sub-sub-)directory gaat, dan kijkt Apache ook in alle bovenliggende directories voor een .htaccess. Als je dus een paar lagen diep zit, dan betekent dat meerdere bestanden waar ie "doorheen moet ploegen".

Als het je eigen server is, en je kunt in de httpd.conf file editen (of conf/extra/httpd-vhosts.conf, of hoe het op jouw server ook ingestoken is), dan heeft dat verreweg de voorkeur.

Zie ook: https://httpd.apache.org/docs/2.4/howto/htaccess.html
 
Ivo P

Ivo P

08/10/2021 22:35:12
Quote Anchor link
Dat hele boom doorzoeken zal bedoeld zijn voor de situatie waar je een hele boom aan mappen hebt. Echte mappen.

En dan kan het voorkomen dat je in documentroot een .htaccess hebt, maar ook in /documentroot/scripts en in /documentroot/scripts/inloggen en in /documentroot/scripts/inloggen/queries/

en dan zal apache elk van die mappen de .htaccess gebruiken.

Maar nu heb je een andere situatie met maar 1 .htacces file. (in de documentroot).

En die doet niets als de file bestaat
en bestaat het path niet, dan wordt index.php aangesproken.

Dat is minimaal werk. En ook de enige manier om dit op te pakken
 
Jan Kila

Jan Kila

08/10/2021 22:35:42
Quote Anchor link
@Arien,
Nee, ik heb geen artikel; het is ook al vrij lang geleden dat ik dit heb gelezen.

@Rob,
Het is een remote host, daar mag ik met m'n vingers vanaf blijven.

Toevoeging op 08/10/2021 22:38:03:

@Ivo,
Je stelt me gerust, dank!
 



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.