当前位置:首页 > 计算机相关 > 建站之路 > 正文内容

ubuntu下apache2.4.6整合限速模块mod_bw.c 和报错的处理

piikee3年前 (2020-04-18)建站之路595

首先,下载mod_bw.c 模块。下载地址:http://legacy.ivn.cl/files/source/mod_bw-0.8.tgz

下载后tar xzvf mod_bw-0.8.tgz进行解压。

这里要安装一个apache2开发模块,不然会报错。

执行apt install apache2-dev 安装。

安装完毕后,执行apxs2 -i -a -c mod_bw.c 开始安装mod_bw模块了。这个时候会报错如下:


/usr/share/apr-1.0/build/libtool --mode=compile --tag=disable-static x86_64-linux-gnu-gcc -prefer-pic -pipe -g -O2 -fstack-protector-strong -Wformat -Werror=format-security -DBUILD_DATETIME='"2019-10-08T13:31:25"' -Wdate-time -D_FORTIFY_SOURCE=2 -DLINUX -D_REENTRANT -D_GNU_SOURCE -pthread -I/usr/include/apache2 -I/usr/include/apr-1.0 -I/usr/include/apr-1.0 -I/usr/include -c -o mod_bw.lo mod_bw.c && touch mod_bw.slo
libtool: compile: x86_64-linux-gnu-gcc -pipe -g -O2 -fstack-protector-strong -Wformat -Werror=format-security -DBUILD_DATETIME=\"2019-10-08T13:31:25\" -Wdate-time -D_FORTIFY_SOURCE=2 -DLINUX -D_REENTRANT -D_GNU_SOURCE -pthread -I/usr/include/apache2 -I/usr/include/apr-1.0 -I/usr/include/apr-1.0 -I/usr/include -c mod_bw.c -fPIC -DPIC -o .libs/mod_bw.o
mod_bw.c: In function 'get_bw_rate':
mod_bw.c:522:59: error: 'conn_rec {aka struct conn_rec}' has no member named 'remote_addr'
if (apr_ipsubnet_test(e[i].x.ip, r->connection->remote_addr)) {
^
mod_bw.c: In function 'get_maxconn':
mod_bw.c:611:59: error: 'conn_rec {aka struct conn_rec}' has no member named 'remote_addr'
if (apr_ipsubnet_test(e[i].x.ip, r->connection->remote_addr)) {
^
mod_bw.c: In function 'get_sid':
mod_bw.c:662:59: error: 'conn_rec {aka struct conn_rec}' has no member named 'remote_addr'
if (apr_ipsubnet_test(e[i].x.ip, r->connection->remote_addr)) {
^
apxs:Error: Command failed with rc=65536

这个错误是由于apache2.2 到2.4 api有所改变,详细如下:

http://httpd.apache.org/docs/2.4/developer/new_api_2_4.html

解决办法:

vi mod_bw.c

把所有的remote_ip和remote_addr分别替换成client_ip和client_addr


再执行 apxs2 -i -a -c mod_bw.c 安装成功。

扫描二维码推送至手机访问。

版权声明:本文由萍客小居发布,如需转载请注明出处。

本文链接:https://www.piikee.net/1379.html

分享给朋友:

相关文章

改变新云4.0首页默认菜单

新云系统的首页默认菜单式是下载频道的,如果要改变为文章频道菜单,可以到包含文件中的header.html里面,找到[code]<li class="current"><a href="/" target="_top">...

通过GG(Google Adsense)你会收到的邮件

祝贺您!您的 Google AdSense 申请已获得批准。现在您可以启动帐户了,几分钟之后即可开始使用 AdSense。第 1 步:登录到您的帐户。请访问 https://www.google.com/adsense?hl=zh_CN 并...

AdSense 广告在 Discuz! 论坛广告展示问题及解决办法

请进入Discuz!安装目录,在include\js目录下的common.js文件内删除以下语句:Array.prototype.push = function(value) {this[this.length] = value;retur...

Google AdSense 最新申请方法汇总

关键是 收款人 ,一个人名不能多帐户,收钱时必须真实地址,同一个人同一个地址多个账号很危险。所以用亲戚朋友姓名申请,一个人一个号,申请时地址可以变化,以后可以改。也就是说,只要有个收款人名字就行了,地址信息与网站匹配!方法1  [推荐]利用...

PHP168 B2B系统 自定义 MYSQL万能标签

PHP168很强悍,但是标签还不是很完善。最近弄首页标签,有些标签模块都没出效果,只好自己研究MYSQL万能标签了。弄个日志来记记这些标签吧。招聘标签:最新10个企业招聘信息(获得id,企业名,发布时间)MYSQLSELECT jobs_i...

Godaddy空间绑定多个域名的方法

1,先到 Domain names-->off-site DNS2,点击add domains3,写入你要加入绑定的域名4,等待系统设定完成5,回到主机管理6,点击主机的OPEN7,点击别名设定8,点击加入别名9,选择你刚刚加入的域名...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。