Prepare for unforeseen consequences
Als de http request door een proxy komt (squid of zo), wordt de header HTTP_X_FORWARDED_FOR toegevoegd,
als het rechtstreeks door de client opgevraagd is, is ie dus niet gezet (dat verklaart die if)
als het rechtstreeks door de client opgevraagd is, is ie dus niet gezet (dat verklaart die if)
blup blup
aha, dus zelfs al gebruikt iemand een proxy, dan nog heb je kans om het ip te achterhalen, dat is leuk
Prepare for unforeseen consequences
Als je REMOTE_ADDR gebruikt om het IP te achterhalen, krijg je soms het IP van de ISP Cache server.
Wanneer dit gebeurt, wordt HTTP_X_FORWARDED_FOR ingesteld met het IP van de gebruiker. Door eerst te checken of HTTP_X_FORWARDED_FOR ingesteld is, en er in REMOTE_ADDR dus het IP van de cache server zit, weet je zeker dat je het goede IP te pakken hebt.
Wanneer dit gebeurt, wordt HTTP_X_FORWARDED_FOR ingesteld met het IP van de gebruiker. Door eerst te checken of HTTP_X_FORWARDED_FOR ingesteld is, en er in REMOTE_ADDR dus het IP van de cache server zit, weet je zeker dat je het goede IP te pakken hebt.
edit:
Ik was alweer te laat...
Ik was alweer te laat...
"I'd rather have a bottle in front of me than a frontal lobotomy."
Ja, maar dan kun je d'r toch niet veel mee.. Hij gaat niet voor niks via een proxy..
Waarschijnlijk is het dan een adres in de 'lan'-range (10.x.x.x of 192.168.x.x om maar 2 voorbeelden te noemen) En als dat niet zo is... Je zult toch via de proxy bij die comp weer moeten komen...
Waarschijnlijk is het dan een adres in de 'lan'-range (10.x.x.x of 192.168.x.x om maar 2 voorbeelden te noemen) En als dat niet zo is... Je zult toch via de proxy bij die comp weer moeten komen...
Ken Thompson's famous line from V6 UNIX is equaly applicable to this post:
'You are not expected to understand this'
(sorry voor kick)
Ik krijg deze error:
Warning: Use of undefined constant REMOTE_ADDR - assumed 'REMOTE_ADDR' in index.php on line 42
dus hij kent de constante REMOTE_ADDR niet, dus hij neemt aan dat het REMOTE_ADDR(die hij dus wel kent) is??
Bij HTTP_X_FORWARDED trouwens ook.
Ik krijg deze error:
Warning: Use of undefined constant REMOTE_ADDR - assumed 'REMOTE_ADDR' in index.php on line 42
dus hij kent de constante REMOTE_ADDR niet, dus hij neemt aan dat het REMOTE_ADDR(die hij dus wel kent) is??
Bij HTTP_X_FORWARDED trouwens ook.
Je kan het beste ook $_SERVER['REMOTE_ADDR'] en $_SERVER['HTTP_X_FORWARDED_FOR'] gebruiken. Anders kan ik met ?HTTP_X_FORWARED=0.0.0.0 je script mooi onzeilen.
Pagina: 1