Hi

Ik heb 2 webpaginas die omzeggens identiek zijn.
Nu zou ik willen dat alle aanroepen van alle bestanden inclusief submappen doorgesluisd worden naar de andere pagina. De data kan ik daar opvangen via PHP. De tabel structuren zijn dezelfde.

Hier is mijn huidige .htaccess bestand

ErrorDocument 401 /fouten/fout401.html
ErrorDocument 403 /fouten/fout403.html
ErrorDocument 404 /fouten/fout404.html

Header add "disablevcache" "true"

RewriteEngine On

RewriteBase /
RewriteRule ^/redirect/van/(.*)$ /redirect/naar/$1 [R=301,L]

RewriteCond %{HTTP_HOST} ^domain.be
RewriteRule (.*) http://www.domain.be/$1 [R=301,L]

RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}

De lijnen 9-10 heb ik toegevoegd maar er wordt niets doorgegeven.

Ik heb eigenlijk totaal geen ervaring net .htaccess. Ik zoek maar iets op internet en pas het aan.

lijn 5 komt van de provider.

Jan
Inderdaad :). De php bestanden sturen zelfs een 404 indien niet van mijn IP. Natuurlijk stel ik dit doorsturen uit tijdens mijn testen.
Jan R op 17/08/2021 07:05:01

Ja, Ik wil niet dat dit subdomain gekend is. vandaar xxxx, niet xxx want dat is synoniem voor porno. :)

En dat is ook het synoniem voor Amsterdam. ;-)
Vooral dan de wallekes zeker?
Als je het DNS niet gebruikt voor je verborgen subdomein, hoe maken clients dan verbinding met de server? En vooral: wat doe je dan met de hostnaam in rewrite rules en redirects?
Welke clients. Er zijn maar 2 personen welke gebruik maken van het verborgen subdomain.
De redirect is geregeld via one.com naar het ip (a record)
Als het maar twee personen zijn, lijkt het me eenvoudiger én veiliger om de informatie te e-mailen of deze bij te houden via een gedeeld bestand op Google Drive of iets dergelijks.
Ik heb niet gezegd dat het maar 1 bestand is. Het is een volledige kopij van de website voor test doeleinden Met afzonderlijke databases.

Wat ik wel gzegd heb is dat het moet werken op www.janr.be/schaak en op xxxx.janr.be/schaak
Ik heb eindelijk een deel van mijn htaccess :)
test: https://www.janr.be/schaak/

# if a directory or a file exists, use it directly
RewriteCond %{REQUEST_URI} ^/schaak/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
# otherwise forward it to index.php
RewriteRule (.*)$ /schaak/index.php?club=$1&b=$2&c=$3&d=$4&e=$5&f=$0 [l]

&b=$2&c=$3&d=$4&e=$5&f=$0 is maar om te testen

Nu heb ik nog wel een paar problemen

[li]bestandsnaam is niet altijd index.php
[li]subfolders moeten nog werken. Deze komen nu in de $_GET['club']. vb: https://www.janr.be/schaak/sc_post-gent/ladder hier bevat $_GET['club']schaak/sc_post-gent/ladder terwijl eigenlijk bestand schaak/sc_post-gent/ladder/index.php aangeroepen moet worden.
[li]de parameter club is niet enkel de club maar de totale folderstructuur.
[li]andere parameters komen niet door en het kunnen er veel zijn :) trn voor toernooinummer, page voor de gevraagde pagina

Is er toch nog iemand met voldoende kennis die mij kan en wil helpen? Mijn kennis schiet echt wel te kort.

Jan
ik geef er de voorkeur aan om zo'n index.php niet te voeren met 1 tot 25 losse parameters, maar gewoon een link naar index.php te doen.

In PHP controleer ik in $_SERVER wat de url is die in de browser staat. (welk element van $_SERVER je moet hebben, moet je met var_dump($_SERVER) zelf even checken: dat verschilt wel eens per server insatallatie.

Wees er ook op bedacht dat de / niet altijd meedoet: hoort de / voor schaak nu wel of niet erbij? en sluit jouw path wel of niet met een / af?

En ik draai de check "is file" en "is directory" meestal om: als het bestaat, dan doe niets.

voorbeeld:
https://www.janr.be/schaak/sc_post-gent/ladder


# if a directory or a file exists, use it directly and do nothing
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^  - [L]

# otherwise if in /schaak forward it to index.php
RewriteCond /?schaak
RewriteRule (.*)$ /schaak/index.php [L] 


[size=xsmall]Toevoeging op 31/08/2021 15:32:13:[/size]

en in schaak/index.php moet je nu in $_SERVER ergens schaak/cs_post-gent/ladder kunnen vinden.
Eventuele GET parameters moeten ook gewoon uitleesbaar blijven.
Schaak is de volledige naam van die map/directory
ik krijg op server onderandere dit terug

    [QUERY_STRING] => club=schaak/sc_post-gent&b=&c=&d=&e=&f=schaak/sc_post-gent
    [REQUEST_URI] => /schaak/sc_post-gent


Ik moet dit dus verder analyseren en daar alles op verder doen bedoel je toch? String splitsen op ampersand en dan de koppelingen maken met key/value pairs, dit inclusief megelijke mappen?


Jan

Reageren