.htacces vraag

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Functioneel Applicatiebeheerder

Wij van CNB zijn op zoek naar een leergierige Functioneel Applicatiebeheerder CNB is de grootste dienstverlener in de markt van bloembollen en vaste planten. In deze markt verricht CNB de volgende diensten: bemiddeling, veilen en het koelen en prepareren van bloembollen. Vanuit ons hoofdkantoor in Lisse werken bijna 100 collega’s dag in dag uit aan de bemiddeling van bloembollen. In Bovenkarspel vindt het koelen en prepareren van de bloembollen plaats. Wij zijn op zoek naar een enthousiaste Functioneel Applicatiebeheerder die naast een applicatie, ook sfeer kan bouwen! Jij: Vindt het leuk om binnen een klein IT-team aan de slag te

Bekijk vacature »

SQL database ontwikkelaar

Functie omschrijving Ben jij niet bang voor complexe algoritmes? Schikt het schrijven van procedures in T-SQL jouw niet af en heb jij al de nodige informatie in SQL, dan is functie precies wat voor jou! Jouw werkzaamheden gaan er als volgt uit zien: Je gaat werken aan de complexere projecten waar jij van A tot Z bij betrokken bent. Je gaat zorg dragen voor het ontwerp, de ontwikkeling en het updaten van SQL databases. Dit doe je op basis van T-SQL. Jij bent van start tot finish betrokken bij de projecten die jij leidt. Je houdt contact met klanten en

Bekijk vacature »

Java Developer (Training And Simulation)

Wat jij doet Je zou onze Java Developer zijn en nauw samenwerken met je Product Owner, Software System Engineer, Scrum Master en andere Developers. Samen draag je bij aan een multidisciplinair en zelf organiserend Agile team. De rol is zeer afwisselend en bestaat uit, maar is zeker niet beperkt tot: de-risk en prototype onbewezen simulatietechnologieën; simulatiekaders ontwikkelen voor gebruik door andere teams; je bent goed in het begrijpen van ingewikkelde ideeën; heeft de mogelijkheid om nauw samen te werken met grote internationale klanten, leveranciers en overheden om onze oplossingen, vastleggingsvereisten, enz. te definiëren en te presenteren. Ben jij het? Wij

Bekijk vacature »

Traineeship Full Stack Java developer

Dit ga je doen Start jij op 7 augustus bij de Experis Academy dan kickstart jij jouw IT-carrière! We leiden je op tot een gewilde Full Stack Java Developer met alle kennis en vaardigheden die nodig zijn om de arbeidsmarkt te betreden. Wat kun je verwachten, hoe zit een dag in het leven van een Trainee eruit? Periode 1 Als Full Stack Java Developer Trainee volg je vanuit huis een op maat gemaakte onlinetraining die in het Engels wordt gegeven. De tijd die je kwijt bent aan het volgen van de training kun je vergelijken met een fulltime werkweek. In

Bekijk vacature »

Randstad - Freelance Backend Developer/ Data Engin

Starting date: 10.05.2023 Salary range: €67,00 - €77,00 Duration: 6 months Hours: 40 Working model: Hybrid* MUST be NL based Job description: Our vision is to have a consistent and data driven experience for all sales across all our operating companies. Our mission is to enable our salespeople to be able to reach out to the right company at the right time. We do this by creating data driven micro services and solutions. We mainly focus on implementation in the Google Cloud but also integrate with local systems and other cloud solutions. A typical day: As a back-end developer you

Bekijk vacature »

Front-end Developer (HTML/CSS, Angular/React/Vue,

Functie Je zal aan de slag gaan in een klein, hecht team met front-end development experts die de ambitie delen mooi werk te leveren. Samen met hen zal je werken aan het gebruiksvriendelijk en interactief maken van complexe webapplicaties, websites en mobile apps. Je levert klanten wat ze nodig hebben terwijl je actief aan jezelf blijft werken met de ondersteuning vanuit je werkplek. Talen als Javascript programmeer jij vloeiend en je hebt kennis van frameworks als React en Angular. Je zou je het liefst nog veel meer ontwikkelen in verschillende front-end talen. Deze kennis deel je graag met je collega’s,

Bekijk vacature »

Back End Developer

Als Back End developer bij KUBUS houd je je bezig met het ontwikkelen van de (web)applicatie en services van BIMcollab. Je hebt een focus op de back end van onze software, daarvoor werken wij hoofdzakelijk met C# en .NET. Wij hanteren een full-stack benadering, wat betekent dat je naast de back-end ook meehelpt bij andere onderdelen van de code. Als softwarebedrijf bevindt KUBUS zich in een unieke positie. We bouwen aan onze eigen producten die wereldwijd door tienduizenden gebruikers worden gebruikt. Ons bedrijf heeft precies de juiste grootte: groot genoeg om echt impact te maken in de markt, maar klein

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 »

Als PHP developer (Symfony) bijdragen aan betere z

Functie Als Medior/Senior PHP developer wordt er een mate van zelfstandigheid verwacht, maar ook dat je goed in een team kunt opereren waar kennis wordt gedeeld en er bijvoorbeeld codereviews plaatsvinden. Kwaliteit staat voorop, mede hierom werken ze bijvoorbeeld zonder echte deadlines in hun sprints. De SaaS-applicatie wordt volledig ontwikkeld in PHP en Symfony. De module bestaat uit een stuk informatie verrijking en intelligentie wat resulteert in een medische check. De logica wordt daarom in de code geïntrigeerd. Je bent onder andere bezig met complexe databases waar meer dan 80.000 medicijnen op verschillende niveaus in staan, die maandelijks worden geactualiseerd.

Bekijk vacature »

.NET Software Developer

Dit ga je doen Als .NET Software Developer zul jij je voornamelijk bezig houden met: Het van scratch af aan bouwen van applicaties (.NET, C#, Bootstrap, KnockoutJs en WebAPI2); Het testen van jouw code d.m.v. het uitvoeren van unittesten; Het oplossen van bugs in de code; Het onderhouden van contact met collega's betreffende de door jouw ontwikkelde applicaties; Het verbeteren en doorontwikkelen van maatwerkapplicaties. Hier ga je werken Jij gaat aan de slag als .NET Software Developer en gaat je focussen op het bedenken, ontwikkelen en testen van maatwerkapplicaties in voornamelijk C#. Dit ga je doen bij een grote, internationale

Bekijk vacature »

Ontwikkelaar MS Dynamics 365 Projecten

Samengevat: Deze werkgever is de kwaliteitsdienst in de tuinbouwsector. Ben jij een ervaren ontwikkelaar? Heb jij ervaring met Ms Dynamics 365 BC? Vaste baan: Ontwikkelaar Ms Dynamics 365 BC ICT MBO 3.500 - 5.000 Ontwikkelaar Ms Dynamics 365 BC Ons bedrijf bewaakt en bevordert de kwaliteit van producten, processen en ketens in de tuinbouw. Wij kenmerken zich door openheid, ruimte voor initiatief, collegialiteit en zelfontplooiing. Deze werkgever is een veelzijdige organisatie. Je werkt voor de eigen IT organisatie. Zij werken met moderne technologie en staan open voor innovatie. Functie: Voor de vacature als Ontwikkelaar Ms Dynamics 365 BC Roelofarendsveen MBO

Bekijk vacature »

Developer Front-end

Functie omschrijving Front-end Developer gezocht! Wij zijn op zoek naar een front-end developer voor een organisatie in de regio Veenendaal die de eindverantwoordelijkheid op zich neemt van alles wat met design te maken heeft. Je hebt in deze functie een adviserende rol hiervoor moet je beschikken over een grote dosis vakinhoudelijke kennis. Je creëert unieke concepten door samen met collega’s en klanten te overleggen over aangeleverde designs. Hiermee draag jij je steentje bij aan de groeiambities van de klant. Jij wordt het vaste aanspreekpunt voor klanten wanneer het gaat over planningen, hierin is het jouw taak om alle betrokkenen goed

Bekijk vacature »

Senior Applicatie ontwikkelaar Java

Bedrijfsomschrijving De IV- organisatie van de Belastingdienst is verantwoordelijk voor en verzorgt de ICT- voorzieningen. Het merendeel van de applicaties wordt op dit moment door de IV- organisatie zelf ontwikkeld, onderhouden en beheerd in het eigen data center. Naast de zorg voor continuïteit op de massale heffing- en inningsprocessen die plaatsvinden binnen een degelijke, stabiele omgeving, wordt er tevens volop gewerkt aan modernisering van het IV- landschap. Dit gebeurt deels intern door gebruik te maken van de expertise die intern aanwezig is, maar ook door het aantrekken van (kant-en-klaar) oplossingen en expertise uit de markt. Functieomschrijving We verwachten van je,

Bekijk vacature »

Magento2 Developer

Functie Ben jij een ontwikkelaar en wil jij een volgende stap zetten en als teamlead aan de slag? Lees dan snel verder! Voor een gewilde opdrachtgever in omgeving Delft zijn wij op zoek naar een programmeur die als meewerkend voorman aan de slag wilt gaan. Een developer die een team van twee man aan zal sturen. Jouw werkzaamheden zullen er als volgt uitzien; Ontwikkelen en ontwerpen van API's; Maatwerkoplossingen; Databeveiliging; Optimalisatie webshops; Ontwikkelen technische implementaties voor verbetering database; Aanspreekpunt voor de organisatie en verantwoordelijk voor de aansturing van externe developers. Zoek je veel uitdaging en veelzijdigheid in je werk dan

Bekijk vacature »

Senior Mobile Developer

Sogeti is een organisatie met een goede werksfeer en zo min mogelijk hiërarchische verhoudingen. Ga je bij ons als Senior Mobile 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 »
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

31/05/2024 18:27:03
 
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.