当前位置: 首页 > 工具软件 > mod_rpaf > 使用案例 >

linux apache 2.4 安装,linux中apache 2.4 安装 mod_rpaf教程

贺宏富
2023-12-01

在使用第三方的DANginx插件用在Directadmin apache2.4的时候,发现无法安装mod_rpaf.这个插件是用来让apache获取到访客正确ip的。

apache2.4已经有了mod_remoteip.so 但没时间仔细研究,Directadmin无法正常加载,先行编译mod_rpaf达到要求

编译时提示的错误

# apxs -i -c -n mod_rpaf-2.0.so mod_rpaf-2.0.c

/var/www/build/libtool --silent --mode=compile gcc -std=gnu99 -prefer-pic   -DLINUX -D_REENTRANT -D_GNU_SOURCE -g -O2 -pthread -I/usr/include/apache  -I/usr/include/apache   -I/usr/include/apache   -c -o mod_rpaf-2.0.lo mod_rpaf-2.0.c && touch mod_rpaf-2.0.slo

mod_rpaf-2.0.c: In function 'rpaf_cleanup':

mod_rpaf-2.0.c:150: error: 'conn_rec' has no member named 'remote_ip'

mod_rpaf-2.0.c:151: error: 'conn_rec' has no member named 'remote_addr'

mod_rpaf-2.0.c:151: warning: implicit declaration of function 'inet_addr'

mod_rpaf-2.0.c:151: error: 'conn_rec' has no member named 'remote_ip'

mod_rpaf-2.0.c: In function 'change_remote_ip':

mod_rpaf-2.0.c:164: error: 'conn_rec' has no member named 'remote_ip'

mod_rpaf-2.0.c:183: error: 'conn_rec' has no member named 'remote_ip'

mod_rpaf-2.0.c:186: error: 'conn_rec' has no member named 'remote_ip'

mod_rpaf-2.0.c:187: error: 'conn_rec' has no member named 'remote_addr'

mod_rpaf-2.0.c:187: error: 'conn_rec' has no member named 'remote_ip'

apxs:Error: Command failed with rc=65536

解决办法:

wget http://soft.dahualab.com/manage/directadmin/easyinstall/mod_rpaf-0.6.tar.gz

tar xzvf mod_rpaf-0.6.tar.gz

cd mod_rpaf-0.6

apxs -i -c -n mod_rpaf-2.0.so mod_rpaf-2.0.c

mod_rpaf让apache获取访客真实IP

安装好了之后,需要对httpd.conf文件进行配置。

1、在httpd.conf加入如下代码:

1.2.RPAFenable On

3.RPAFsethostname On

4.RPAFproxy_ips 127.0.0.1

5.RPAFheader X-Forwarded-For

6.

加载模块代码:

1.LoadModule rpaf_module   modules/mod_rpaf-2.0.so

2、并定义日志格式

1.LogFormat "%{X-Forwarded-For}i %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" varnishcombined

3、以后可以使用如下代码启用此格式的日志:

1.CustomLog "/home/wwwlogs/$domain.log" varnishcombined

 类似资料: