EPrints Technical Mailing List Archive
See the EPrints wiki for instructions on how to join this mailing list and related information.
Message: #02073
< Previous (by date) | Next (by date) > | < Previous (in thread) | Next (in thread) > | Messages - Most Recent First | Threads - Most Recent First
[EP-tech] x-forwarded ip in access table
- To: "eprints-tech@ecs.soton.ac.uk" <eprints-tech@ecs.soton.ac.uk>
- Subject: [EP-tech] x-forwarded ip in access table
- From: Matthew Brady <Matthew.Brady@usq.edu.au>
- Date: Thu, 4 Jul 2013 07:16:41 +0000
Hi, We have just moved our server and needed to modify the apache .conf files to use X-Forwarded-For, so we get the correct IP’s into the access and error logs. This is all
working correctly. The collection of ip’s in the access table was not handling the x-forward header info. Fixed it by editing this file, perl_lib/EPrints/Apache/LogHandler.pm, and adding extra code to pick up the header info and fall back to regular ip if not defined. sub _generic { my( $r, $epdata ) = @_; my $c = $r->connection; my $ip = $c->remote_ip; + my $ip_XForward = $r->headers_in->{ "X-Forwarded-For" };
+ if (defined $ip_XForward) + { + $ip = $ip_XForward; + }
$epdata->{datestamp} = EPrints::Time::get_iso_timestamp( $r->request_time
); $epdata->{requester_id} = $ip; $epdata->{referring_entity_id} = $r->headers_in->{ "Referer" }; $epdata->{requester_user_agent} = $r->headers_in->{ "User-Agent" }; # Sanity check referring URL (don't store non-HTTP referrals) if( !$epdata->{referring_entity_id} || $epdata->{referring_entity_id}
!~ /^https?:/ ) { $epdata->{referring_entity_id} = ''; } return $epdata; } Cheers Matt This email (including any attached files) is confidential and is for the intended recipient(s) only. If you received this email by mistake, please, as a courtesy, tell the sender, then delete this email. The views and opinions are the originator's and do not necessarily reflect those of the University of Southern Queensland. Although all reasonable precautions were taken to ensure that this email contained no viruses at the time it was sent we accept no liability for any losses arising from its receipt. The University of Southern Queensland is a registered provider of education with the Australian Government. (CRICOS Institution Code QLD 00244B / NSW 02225M, TEQSA PRV12081 ) |
- Prev by Date: [EP-tech] enable SWORD for our repository
- Next by Date: [EP-tech] Re: x-forwarded ip in access table
- Previous by thread: [EP-tech] enable SWORD for our repository
- Next by thread: [EP-tech] Re: x-forwarded ip in access table
- Index(es):