操作系统迁移实战之Apache 2.4.39 移植

Apache HTTP Server(简称Apache)是Apache软件基金会的一个开放源码的网页服务器,可以在大多数计算机操作系统中运行,由于其多平台和安全性被广泛使用,是最流行的Web服务器端软件之一。它快速、可靠并且可通过简单的API扩展,将Perl/Python等解释器编译到服务器中。以openEuler 20.03 LTS SP1为例,聊一下移植方法。也希望大家提供一些建议。

开发语言:C

一句话描述:Web 服务器

建议的版本

建议使用版本为“Apache httpd 2.4.39”及以上版本。

一、环境要求

1.1 硬件要求

硬件要求如下所示。

项目 说明
服务器 TaiShan 200服务器(型号2280)
CPU 鲲鹏920 5250处理器
磁盘分区 对磁盘分区无要求

1.2 操作系统要求

操作系统要求如下所示。

项目 版本
openEuler 20.03 sp1 aarch64
CPU 鲲鹏920 5250处理器
Kernel 4.19

说明:
如果是全新安装操作系统,安装方式建议不要使用最小化安装,否则很多软件包需要手动安装,可选择“Server with GUI”安装方式。

1.3 配置编译环境

  1. 安装开发包
yum update yum install gcc gcc-c++
  1. 安装依赖库
yum install apr-devel.aarch64 apr-util-devel.aarch64 pcre-devel.aarch64 -y
  1. 获取源码

下载地址:

http://archive.apache.org/dist/httpd/httpd-2.4.39.tar.gz

二、配置安装

tar xzvf httpd-2.4.39.tar.gz

2.1 修改源码配置

cd httpd-2.4.39
vi ./build/config.sub

找到下面两行进行修改,添加aarch64:

| x86 | xc16x | xstormy16 | xtensa \
=>
| x86 | aarch64 | xc16x | xstormy16 | xtensa \


| x86-* | x86_64-* | xc16x-* | xps100-* \
=>
| x86-* | aarch64-* | x86_64-* | xc16x-* | xps100-* \

2.2 编译安装

./configure --host=aarch64 --build=aarch64
make -j4
make install

2.3 参数配置

修改httpd.conf

vi /usr/local/apache2/conf/httpd.conf

89行取消注释:
  LoadModule socache_shmcb_module modules/mod_socache_shmcb.so

196行取消注释,修改为当前服务器IP 
  #ServerName www.example.com:80
  =>
  ServerName local_server_ip:80

461行取消注释
  Include conf/extra/httpd-mpm.conf

488行取消注释
  Include conf/extra/httpd-default.conf

修改httpd-default.conf

vi /usr/local/apache2/conf/extra/httpd-default.conf

23行值修改为0
  MaxKeepAliveRequests 0

三、验证:

apache启动命令:
  /usr/local/apache2/bin/httpd -f /usr/local/apache2/conf/httpd.conf -k start

apache停止命令:
  /usr/local/apache2/bin/httpd -f /usr/local/apache2/conf/httpd.conf -k stop

查看服务进程:
  ps -ef |grep httpd

四、总结

根据指导进行操作,整体还是比较流畅,遇到一些疑惑,也能在社区内寻求解决方式。感兴趣的伙伴可以尝试尝试,一起交流交流

参考资料:
openEuler官网
https://www.openeuler.org/zh/other/migration/

x2openEuler 用户指南
https://docs.openeuler.org/zh/docs/20.03_LTS_SP1/docs/thirdparty_migration/x2openEuleruseguide.html

你可能感兴趣的:(openEuler技术博客,openEuler迁移专区,apache,centos,系统架构,鸿蒙系统,linux)