前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >apache工具包_apache怎么安装

apache工具包_apache怎么安装

作者头像
全栈程序员站长
发布2022-09-29 11:21:49
1.1K0
发布2022-09-29 11:21:49
举报
文章被收录于专栏:全栈程序员必看

大家好,又见面了,我是你们的朋友全栈君。

前言

以下是在自己的腾讯云vps(ubuntu16.04)操作,通过oneinstack安装lamp的,本文通过apxs安装mod_proxy.so模块。

正文

apxs是apache管理模块的工具它做的是将mod.c生成mod.so,并使其能被apache加载,使用apxs的前提:mod_so已被加载

  • 查看相关信息
代码语言:javascript
复制
## 注:以下httpd路径以自己服务器为准
## 查看是否加载了mod_so模块
/usr/local/apache/bin/httpd -l
## 列出编译过的模块,可看出是static静态,还是shared动态
/usr/local/apache/bin/httpd -M
## 查看apache版本
/usr/local/apache/bin/httpd -v
## 笔者的是2.2.34
Server version: Apache/2.2.34 (Unix)
代码语言:javascript
复制
## 搜索
locate apxs
## 如果没有就安装吧
sudo apt-get install apache2-dev
## 更新查询数据库
sudo updatedb
## 查询是否有apxs
locate apxs
## 有内容显示一般就是成功了

apache安装模块的流程是这样的(以mod_proxy.so为例子):

  1. 找到mod_proxy.c 文件,即源文件,这个上官网下载源码包,注意对应自己的版本。
  2. mod_proxy.c编译,弄成mod_proxy.so放到modules/下。
  3. 在apache配置文件httpd.conf加上LoadModule 语句+ 找.c文件 使用apxs,第二三步一个命令就可完成
  • 使用apxs 参数说明
代码语言:javascript
复制
-i : 把生成的.so文件移动到modules目录下(大概这个意思)
-c : 编译,.c->.so
-a : 在httpd.conf加上LoadModule该模块语句语句

具体使用

代码语言:javascript
复制
## 找到自己mod_proxy.c文件位置,执行apxs
## 注:mod_proxy.so模块需要2个文件编译
/usr/local/apache/bin/apxs -i -c -a mod_proxy.c proxy_util.c
## 查看modules下是否有mod_proxy.so模块
ll /usr/local/apache/modules/mod_proxy.so
## 显示
-rwxr-xr-x 1 root root 151K 1月   7 19:39 /usr/local/apache/modules/mod_proxy.so
## 查看httpd.conf是否LoadModule
cat /usr/local/apache/conf/httpd.conf | grep "proxy" 
## 显示
LoadModule proxy_module      modules/mod_proxy.so

## 重启httpd
service httpd stop
service httpd start
## 查看加载的模块
/usr/local/apache/bin/httpd -M

至此,使用apxs加载mod_proxy.so模块完成

使用apxs加载自己的apache模块

在apax的介绍里看到的,顺手记录之,如果自己写了个小模块,也可以通过apxs加载,但我没测试过,具体看官网apxs 参数说明:

代码语言:javascript
复制
-g : generate,生成.c等文件
-n : 命名
代码语言:javascript
复制
$ /usr/local/apache/bin/apxs -g -n foo
Creating [DIR] foo
Creating [FILE] foo/Makefile
Creating [FILE] foo/modules.mk
Creating [FILE] foo/mod_foo.c
Creating [FILE] foo/.deps
## 然后也是将.c -> .so 

总结

.c源文件,.o目标文件,.a静态库,.so动态库,用过gcc编译的对使用apxs使用应该很容易就能掌握。

相关链接

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/193596.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年9月15日 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前言
  • 正文
    • 使用apxs加载自己的apache模块
    • 总结
    • 相关链接
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档