Toon posts:

[php] redirect-service bouwen :)

Pagina: 1
Acties:

Verwijderd

Topicstarter
Hey ppl!
Ik ben (nog steeds) bezig met het bouwen van een cjb.net-alike service maar dan beter natuurlijk ;)
Ik stuitte nu alleen echter op het volgende probleem:
Path-Forwarding: accountnaam.mijndomein.com/eendir/eenfile.html zou ook moeten redirecten naar home.server.com/~gebruiker/eendir/eenfile.html. De dns staat gewildcard naar een index.php die alles verder regelt, MAAR als ik naar subdomain.domain.com/eendir/ ga krijg ik een 404 :S
=========edit=========
Hij linkt dus niet naar mij script en dus kan ik ook niet redirecten..
======================
Heeft iemand hier misschien een geniale oplossing voor??

Verwijderd

uhm, is het misschien niet mogelijk doormiddel van,
bijvoorbeeld .htaccess (in apache geloof ik) de 404 errors te catchen en daar iets mee doet...

  • Grum
  • Registratie: Juni 2001
  • Niet online
ik mis het probleem een beetje :D

Als je naar een file gaat die niet bestaat hoor je toch gewoon een 404 te krijgen :?

  • chem
  • Registratie: Oktober 2000
  • Laatst online: 27-08 13:53

chem

Reist de wereld rond

waarom PHP, en niet Apache Rewrite Engine gebruiken?

Klaar voor een nieuwe uitdaging.


  • Grum
  • Registratie: Juni 2001
  • Niet online
omdat ie misschien nog et target moet opzoeken ? (of doe je et niet dynamisch ?)

Verwijderd

Topicstarter
Op zaterdag 06 april 2002 19:20 schreef chem het volgende:
waarom PHP, en niet Apache Rewrite Engine gebruiken?
uhm wow, leg uit :)

Verwijderd

Topicstarter
Op zaterdag 06 april 2002 19:19 schreef Grum het volgende:
ik mis het probleem een beetje :D

Als je naar een file gaat die niet bestaat hoor je toch gewoon een 404 te krijgen :?
Ehm.. Het probleem is dus dan hij GEEN 404 moet krijgen maar gewoon naar mijn script linkt ;) Grofweg dan..

  • chem
  • Registratie: Oktober 2000
  • Laatst online: 27-08 13:53

chem

Reist de wereld rond

de Rewrite Engine stelt je in staat URL's on-the-fly om te schrijven... dmv. een tekstherkenningspatroon kun je dus de user meteen doorverkassen naar ik meen.

Anders zie ik trouwens nog steeds geen probleem met je doorsturen; kwestie van je 404 page een PHP page laten zijn (evt. de correcte http referer dmv de rewrite engine gegarandeerd meegeven)

Klaar voor een nieuwe uitdaging.


  • chem
  • Registratie: Oktober 2000
  • Laatst online: 27-08 13:53

chem

Reist de wereld rond

Op zaterdag 06 april 2002 19:22 schreef Grum het volgende:
omdat ie misschien nog et target moet opzoeken ? (of doe je et niet dynamisch ?)
je kan ook belachelijk veel rewrites maken :)

cq. voor elke subdomein een rewrite... (vraag me wel af of apache een trap moet krijgen als je dan nieuwe rewrites toevoegt in de httpd.conf, want je kan dit niet meer dmv. .htaccess doen dan denk ik)

Klaar voor een nieuwe uitdaging.


Verwijderd

Topicstarter
ehm, het enige probleem is echter dat de server niet van mij is en dat er ook nog meer sites op staan.. Is het dan zo dat alle 404's gelijk mijn script worden?? Lijkt me niet dat m'n host dat dan goed zal vinden :?

  • Grum
  • Registratie: Juni 2001
  • Niet online
Waarom zou je in godsnaam willen dat als een page niet bestaat dat je dan geen 404 krijgt ?

als jij em doorstuurt wat kan jou et dan iets schelen dat het target niet bestaat :?

Verwijderd

Topicstarter
Op zaterdag 06 april 2002 19:42 schreef Grum het volgende:
Waarom zou je in godsnaam willen dat als een page niet bestaat dat je dan geen 404 krijgt ?

als jij em doorstuurt wat kan jou et dan iets schelen dat het target niet bestaat :?
jaaaaaaaaa, hoe moet ik em dan doorsturen als ie m'n hele script niet ziet omdat ie een 404 geeft????

  • chem
  • Registratie: Oktober 2000
  • Laatst online: 27-08 13:53

chem

Reist de wereld rond

Op zaterdag 06 april 2002 19:42 schreef Grum het volgende:
Waarom zou je in godsnaam willen dat als een page niet bestaat dat je dan geen 404 krijgt ?

als jij em doorstuurt wat kan jou et dan iets schelen dat het target niet bestaat :?
hij heeft het erover dat men naar bv. pietjepuk.cjb.net/warez/ gaat, de dir warez/ niet bestaat uiteraard op cjb.net. En je dus een 404 krijgt ipv op de /index.php terechtkomt.

Verder denk ik dat je enigzins onderschat wat dit allemaal aan tijd kost om te bouwen; zeker als je dit op een shared server gaat draaien waar je verder geen recht van spreken hebt wbt de apache config en de dns config etc. etc. en er blijkbaar ook geen verstand van hebt verder.

Klaar voor een nieuwe uitdaging.


Verwijderd

Topicstarter
Op zaterdag 06 april 2002 19:46 schreef chem het volgende:

[..]

hij heeft het erover dat men naar bv. pietjepuk.cjb.net/warez/ gaat, de dir warez/ niet bestaat uiteraard op cjb.net. En je dus een 404 krijgt ipv op de /index.php terechtkomt.

Verder denk ik dat je enigzins onderschat wat dit allemaal aan tijd kost om te bouwen; zeker als je dit op een shared server gaat draaien waar je verder geen recht van spreken hebt wbt de apache config en de dns config etc. etc.
en er blijkbaar ook geen verstand van hebt verder.
Jij hebt em door ;) Alleen hoef je dan nog niet gelijk zo gemeen te doen :'(

  • Grum
  • Registratie: Juni 2001
  • Niet online
een redir service heb je in 30 minuten opgezet hoor ;)

  • chem
  • Registratie: Oktober 2000
  • Laatst online: 27-08 13:53

chem

Reist de wereld rond

verder denk ik persoonlijk, dat als je dit niet oplost dmv. in-1-stap redirect headers je aan een behoorlijke performance bottleneck komt.
Zelfs als jouw server op een 1 gbit backbone hangt; zal bv. een casema gebruiker nu eerst naar
crap.domein.nl/dir/file.html gaan
dan naar crap.domein.nl/redir.php?r=/dir/file.html
dan naar
home.host.nl/~user/dir/file.html

dat gaat domweg veel tijd kosten... nu weet ik niet hoe CJB dat doet; maar ik zou eens kijken hoe je daar heen-en-weer getossed word. Ik gok erop dat dat in 1x gebeurd.
Hou er rekening mee dat er dan geen statistieken kunnen worden bijgehouden met eenvoudige rewrites (aangezien die geen php proces opstarten oid)

Klaar voor een nieuwe uitdaging.


Verwijderd

Topicstarter
Op zaterdag 06 april 2002 19:49 schreef Grum het volgende:
een redir service heb je in 30 minuten opgezet hoor ;)
Nou kom maar op! Ik ben over een half uurtje terug ok?! B-)

  • chem
  • Registratie: Oktober 2000
  • Laatst online: 27-08 13:53

chem

Reist de wereld rond

Op zaterdag 06 april 2002 19:49 schreef Grum het volgende:
een redir service heb je in 30 minuten opgezet hoor ;)
'een' redirect service wel. Met de '404-truuk' heb je dat idd in een half uur opgezet incl logging.

De vraag is hoe efficient dat is, en hoeveel gebruikers je daarmee kan ondersteunen: je kan dan wel op bandbreedte besparen (aangezien je enkel wat headertjes rondstuurt), maar als je dit dmv php doet zal ***elke*** afbeelding/html/mp3 etc. etc. die men dmv. de redirect-domein linkt moeten worden 'verwerkt', in de zin dat er een apache child op je server een php script zal moeten uitvoeren. auch.

Klaar voor een nieuwe uitdaging.


  • Grum
  • Registratie: Juni 2001
  • Niet online
chem .. ik heb et toch gedaan hoor ;) (voor m'n werk :P)

de magische line die je wilt gebruiken is:


RewriteRule ^/(.*)$ /index.php?domain=%{HTTP_HOST}&url=$1%{QUERY_STRING}

  • chem
  • Registratie: Oktober 2000
  • Laatst online: 27-08 13:53

chem

Reist de wereld rond

Op zaterdag 06 april 2002 19:52 schreef WebMasterMike het volgende:

[..]

Nou kom maar op! Ik ben over een half uurtje terug ok?! B-)
het stappenplan:
maak een redirect.php die enkel bevat: header("Location: ".urlencode($url));

daarnaast stel je apache in dat hij elke request op domein *.domein.nl rewrite naar *.domein.nl/redirect.php?url={$1}

tadaaaa.... je redirect service.

Klaar voor een nieuwe uitdaging.


  • chem
  • Registratie: Oktober 2000
  • Laatst online: 27-08 13:53

chem

Reist de wereld rond

Op zaterdag 06 april 2002 19:55 schreef Grum het volgende:
chem .. ik heb et toch gedaan hoor ;) (voor m'n werk :P)

de magische line die je wilt gebruiken is:


RewriteRule ^/(.*)$ /index.php?domain=%{HTTP_HOST}&url=$1%{QUERY_STRING}
dat zeggik :)

maar dan nog; bij elke hit zal er dus een PHP script moeten draaien... hoeveel kan een server daarvan tegelijk draaien? hoeveel users verwacht je te krijgen, en hoeveel hits genereren die per stuk?

Klaar voor een nieuwe uitdaging.


  • Grum
  • Registratie: Juni 2001
  • Niet online
kleine 8 miljoen redirs per dag ? (niet op 1 server he)

kijk maar naar v3 .. die is op dezelfde manier gemaakt

  • chem
  • Registratie: Oktober 2000
  • Laatst online: 27-08 13:53

chem

Reist de wereld rond

Op zaterdag 06 april 2002 19:57 schreef Grum het volgende:
kleine 8 miljoen redirs per dag ? (niet op 1 server he)

kijk maar naar v3 .. die is op dezelfde manier gemaakt
ha! zie je wel!
niet op 1 server :)

daarbij kan je dit ook oplossen door zelf een 'webserver' te bouwen in C die zo dom is als het achterend van een koe, en enkel bestaat uit een mysql-interface (ik noem maar wat), een zutje http-functies en wat intelligentie om url's aan te passen / de hele boel kan verwerken.

Je hebt dan een heeel simpel proggeltje dat zonder alle toeters en bellen van Apache, simpelweg mensen kan doorsturen. Me dunkt dat bv. V3 en cjb.net ook voor een dergelijke oplossing hebben gekozen?

Klaar voor een nieuwe uitdaging.


Verwijderd

Topicstarter
kortom: het wordt allemaal erg ingewikkeld en ik kan het dus maar beter niet doen voor op een remote host??

  • Grum
  • Registratie: Juni 2001
  • Niet online
chem: nee ... v3 doet et gewoon met apache hoor :)

en tegen de tijd dat jij een socketpool beheer bladiebla hebt geschreven die zo robuust als apache is dan ben je al een tijdje verder.

  • chem
  • Registratie: Oktober 2000
  • Laatst online: 27-08 13:53

chem

Reist de wereld rond

Op zaterdag 06 april 2002 20:04 schreef Grum het volgende:
chem: nee ... v3 doet et gewoon met apache hoor :)

en tegen de tijd dat jij een socketpool beheer bladiebla hebt geschreven die zo robuust als apache is dan ben je al een tijdje verder.
nix zelf schrijven.

Apache is open source, dus je rukt daar gewoon je tcp/ip shit uit. Dan neem je de kant-en-klare C mysql interface, en het aan elkaar plakken met een reg exp ding moet elke dude kunnen :)

Dat vereist natuurlijk wat meer werk dan 1 apache regel, en een klein php filetje; maar je kan er wel wat meer mee :)

Klaar voor een nieuwe uitdaging.


  • chem
  • Registratie: Oktober 2000
  • Laatst online: 27-08 13:53

chem

Reist de wereld rond

Op zaterdag 06 april 2002 20:03 schreef WebMasterMike het volgende:
kortom: het wordt allemaal erg ingewikkeld en ik kan het dus maar beter niet doen voor op een remote host??
nee hoor, het hoeft HELEMAAL niet ingewikkeld. Het kan zoals grum en ik al laten zien buitengewoon makkelijk (met een beetje medewerking van je ISP).

Maar je moet je wel even goed afvragen waar het op komt te draaien en wat je voor methode wil hanteren, en wat je doelstelling is. En wat je performance moet [kunnen] zijn, want op een gedeelde host word je niet lief aangekeken met bv. 8M redirects/dag :)

Klaar voor een nieuwe uitdaging.


Verwijderd

Je kunt dit toch het makkelijkste doen door een 404 script? Je laat je 404 script gewoon kijken wat het path was... Zo deed ik het in ieder geval voorheen met WebFreak

  • chem
  • Registratie: Oktober 2000
  • Laatst online: 27-08 13:53

chem

Reist de wereld rond

Op zaterdag 06 april 2002 21:37 schreef D-Smoove het volgende:
Je kunt dit toch het makkelijkste doen door een 404 script? Je laat je 404 script gewoon kijken wat het path was... Zo deed ik het in ieder geval voorheen met WebFreak
je kan ook even de discussie doorlezen voor je meteen commentaar geeft.

Het punt is dat je bij zeeeer veel bezoekers je het nog jezelf, nog je bezoekers wil aandoen om zoveel redirects te gebruiken; niet te vergeten dat vaak er geen referrer wordt meegegeven naar de 404 pagina.

Klaar voor een nieuwe uitdaging.


Verwijderd

Topicstarter
Op zaterdag 06 april 2002 21:37 schreef D-Smoove het volgende:
Je kunt dit toch het makkelijkste doen door een 404 script? Je laat je 404 script gewoon kijken wat het path was... Zo deed ik het in ieder geval voorheen met WebFreak
Ey, daar heb ik wat aan :) Ervaringen van de pro's :D
Ik heb ook nog ff wat around gekeken en het schijnt gewoon te kunnen met 1 htaccess-je van 3 regel`s :) ff proberen :)

  • Grum
  • Registratie: Juni 2001
  • Niet online
Zo te horen weet jij niet wie V3 is ...

kijk maar es op www.v3.com en denk voor de grap eens aan go.to surf.to etc

  • chem
  • Registratie: Oktober 2000
  • Laatst online: 27-08 13:53

chem

Reist de wereld rond

Op zaterdag 06 april 2002 22:21 schreef Grum het volgende:
Zo te horen weet jij niet wie V3 is ...

kijk maar es op www.v3.com en denk voor de grap eens aan go.to surf.to etc
tegen wie heb je het :?

anyways, ik ben van mening dat alhoewel je heel ver kan komen met apache, je toch serieus moet kijken of je niet dmv. standaard components zelf een C app kan schrijven in korte tijd. Ik kan me haast niet anders voorstellen dan dat je daarmee veeeeel meer hits kan supporten...

Klaar voor een nieuwe uitdaging.


  • SWINX
  • Registratie: Juni 2001
  • Laatst online: 02-06 23:18
Op zaterdag 06 april 2002 23:41 schreef chem het volgende:

tegen wie heb je het :?
tegen WebMasterMike neem ik aan.

Waarom ik dat denk?
Omdat ie enthousiast reageert bij WebFreak en niet bij V3

Mannen komen van Mars Tweakers, vrouwen van Venus Bokt


  • Grum
  • Registratie: Juni 2001
  • Niet online
Misschien ook omdat mijn post onder zijn post staat :? :D

  • SWINX
  • Registratie: Juni 2001
  • Laatst online: 02-06 23:18
Op zaterdag 06 april 2002 23:46 schreef Grum het volgende:
Misschien ook omdat mijn post onder zijn post staat :? :D
dat ook, maar dat hoeft niet altijd zo te zijn hè ;)

Mannen komen van Mars Tweakers, vrouwen van Venus Bokt


  • Grum
  • Registratie: Juni 2001
  • Niet online
nee .. ruim 14 minuten na de post boven me zou ik nog een post posten die geen refs heeft naar een andere post en dan zou ie zeker niet op de post erboven slaan :?

Misschien jij .. maar ik niet :+

  • SWINX
  • Registratie: Juni 2001
  • Laatst online: 02-06 23:18
Op zondag 07 april 2002 00:15 schreef Grum het volgende:
nee .. ruim 14 minuten na de post boven me zou ik nog een post posten die geen refs heeft naar een andere post en dan zou ie zeker niet op de post erboven slaan :?

Misschien jij .. maar ik niet :+
je hebt wel eens dat posts op meerde berichten kunnen wijzen, maar dat wat hier niet het geval en dat heb ik ook niet gezegd :)

Mannen komen van Mars Tweakers, vrouwen van Venus Bokt


Verwijderd

Op zaterdag 06 april 2002 21:43 schreef chem het volgende:

[..]

je kan ook even de discussie doorlezen voor je meteen commentaar geeft.

Het punt is dat je bij zeeeer veel bezoekers je het nog jezelf, nog je bezoekers wil aandoen om zoveel redirects te gebruiken; niet te vergeten dat vaak er geen referrer wordt meegegeven naar de 404 pagina.
Denk je echt dat dit zo zwaar is voor een server? WebFreak heeft nu een dikke 21.000 leden (okay, tis nix vergeleken met V3, maar toch netjes vond ik) en het is nieteens te merken qua serverload. En het redirecten gaat ook onwijs snel!

  • Stewie!
  • Registratie: September 2001
  • Laatst online: 23:37

Stewie!

Keen must die!

Op zaterdag 06 april 2002 19:14 schreef lennardV het volgende:
uhm, is het misschien niet mogelijk doormiddel van,
bijvoorbeeld .htaccess (in apache geloof ik) de 404 errors te catchen en daar iets mee doet...
Jij bedoelt dus dat er staat
errorpage 404 index.php

En dan is index.php je index.php scriptje. Natuurlijk kijk je effe welk adres er gevraagd was en zo doorverwijzen


Strava: https://www.strava.com/athletes/149347154


  • chem
  • Registratie: Oktober 2000
  • Laatst online: 27-08 13:53

chem

Reist de wereld rond

Op zondag 07 april 2002 13:42 schreef D-Smoove het volgende:

[..]

Denk je echt dat dit zo zwaar is voor een server? WebFreak heeft nu een dikke 21.000 leden (okay, tis nix vergeleken met V3, maar toch netjes vond ik) en het is nieteens te merken qua serverload. En het redirecten gaat ook onwijs snel!
ik denk dat apache het makkelijk volhoudt.

Ik denk echter dat je veel MEER kan doen op dezelfde hardware met een dedicated proggeltje van niks.

Daarbij is de user in 1x doorsturen voor gebruikers met matige verbindingen (casema, 56k of langzamer) aanzienlijk sneller dan 2x doorsturen...

Zoals ik al zei: apache kan het best, en je hebt het snel opgezet. Maar het lijkt *mij* een serieus idee om er een aparte applicatie voor te brouwen op basis van kant-en-klare components.

Klaar voor een nieuwe uitdaging.

Pagina: 1