当前位置: 首页 > news >正文

Ubuntu-server 22.04LTS源码编译apache服务器

1 系统环境

# cat /etc/os-release
PRETTY_NAME="Ubuntu 22.04.3 LTS"
NAME="Ubuntu"
VERSION_ID="22.04"
VERSION="22.04.3 LTS (Jammy Jellyfish)"
VERSION_CODENAME=jammy
ID=ubuntu
ID_LIKE=debian
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
UBUNTU_CODENAME=jammy

2下载源码文件

2.1 创建目录

# mkdir /data
# cd /data
# mkdir apache
# mkdir pcre
# mkdir apr-util
# mkdir apr

2.2 下载源码

# wget https://mirrors.aliyun.com/apache/apr/apr-1.7.4.tar.gz
# wget https://mirrors.aliyun.com/apache/apr/apr-util-1.6.3.tar.gz
# wget http://downloads.sourceforge.net/project/pcre/pcre/8.45/pcre-8.45.tar.gz
# wget https://dlcdn.apache.org/httpd/httpd-2.4.57.tar.gz

各自解压到响应文件夹

2.3 编译 apr

# ./configure --prefix=/usr/local/apr
# make
# make install

2.4 编译apr-util

# ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr/bin/apr-1-config
# make 
# make install

2.5 编译 pcre

# ./configure --prefix=/usr/local/pcre
# make
# make install

2.6 编译httpd

# ./configure --prefix=/usr/local/httpd --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util
# make
# make install

3 相关错误记录

3.1 报错libpcre.so.1不存在

# ./apachectl start
/usr/local/httpd/bin/httpd: error while loading shared libraries: libpcre.so.1: cannot open shared object file: No such file or directory

解决方法:

echo "/usr/local/lib" >> /etc/ld.so.conf
ldconfig

3.2 告警domain

AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1. Set the 'ServerName' directive globally to suppress this message

修改配置文件:

# cd conf
# vi httpd.conf
...
# If your host doesn't have a registered DNS name, enter its IP address here.
#
ServerName 0.0.0.0:80

注意,这是本地测试环境,如果有公网注册域名,可以使用,例如:www.baidu.com:80

3.3 因为版本原因,执行编译httpd报错 working script at pcre-config

...
checking for pcre-config... pcre-config
configure: error: Did not find working script at pcre-config

PCRE默认指定路径尝试,

# ./configure

完成后用如下命令监测:

# whereis pcre-config
pcre-config: /usr/local/bin/pcre-config
http://www.lryc.cn/news/168192.html

相关文章:

  • 科技资讯|苹果虚拟纸可在Vision Pro中为广告、书籍等提供MR内容和动画
  • JavaScript-promise使用+状态
  • xshell---git上传文件到gitee远程仓库配置
  • 【GO语言基础】前言
  • 巧妙的设计
  • 前端JavaScript中MutationObserver:监测DOM变化的强大工具
  • 28335 GPIO作为输入的配置记录
  • js脚本解决markdown本地图片->图床问题,附源代码和编译后的exe
  • C#不通过byte[],直接对内存映射文件复制内存
  • ELK之Logstash启动异常:Logstash could not be started because there is already...
  • Matlab Simulink支持system generator插件
  • redis设计规范
  • 用于非线性多载波卫星信道的多输入多输出符号速率信号数字预失真器DPD(Matlab代码实现)
  • 【Spark】用udf和withColumn在dafaframe中创建新列
  • AIGC 设计能替代真正的设计师设计吗?
  • 【1++的C++进阶】之emplace详解
  • React入门
  • 第三方登录以及验证
  • MS SQL Server问题汇总
  • 在线海报图片设计器、图片编辑器源码/仿照稿定设计源码
  • KMP算法(C++)
  • C++的异常类型与多级catch匹配
  • 查询IP地址可得到哪些信息
  • 考研算法47天:01背包
  • Docker实战技巧(一):Kubernetes基础操作实战
  • android java读写yaml文件
  • 科学计算器网站Desmos网站
  • 结构体-时间的计算
  • pt24django教程
  • Golang开发-new关键字